请慎用display:inline
最近在做官方MSN群空间的项目,做到下面这样一个页面 主要说说中间【群友博客】的排列方式 这样的排列方式,自然而然的想到应该用li去实现,对!没错,就是用li去写··· 我说一下我的写法: ·定UL的宽度和padding,定ul上边距和左边距的具体数值 ·定li下边距和右边距的具体数值(与ul互补) ·将图片和文字作为一个a处理,定义display:block,作为块元素处理,定义宽度 下面我说一下我遇到的问题,一开始在li里我设置了 float:left和display:inline,发现最后一行的li的下边距不起作用,我当时觉得很奇怪,以前也遇到过类似的问题,大致意思就是说有对象进行浮动造成margin不起作用的情况,当时遇到这个问题的解决办法是插入一个清除浮动的div(<div style="clear:both"></div>)。 于是,我就想用同样的方法来解决,但加上这个清除浮动的div后发现并不起作用,我又想想,既然li不行,我变通一下,就在a里写margin,反正效果都是一样的,我同样对a写下边距和右边距的具体数值···预览一下,恩,到是可以了···下边距起作用了··· 但我觉得这样好像不怎么正规,所以我就在想到底是什么原因,就一个一个的试,当我把li里的display:inline删除后,我发现li的下边距起作用了,我平时很少在li里使用display:inline,也不太明白它真正的意义是什么··· 晚上回来后翻了一下css2手册,大致意思应该就是删除行的意思,那我想删除行的话,估计就引起下边距不起作用了··· 哎呀,不去追究那么多了···反正效果是实现了··· 所以,我建议大家慎用display:inline(但是好像在导航里用的比较多)··· 值得一提的是:display:inline可以起到list-style-type:none;的作用,而且我发现很多地方写有序列表都习惯在ul里设置list的样式,但是我一般都是在li里设置···不知道大家是怎么个写法···