margin-left和display的一点故事
作者:kun10 发布时间:February 12, 2010 分类:CSS
前几天qq上面突然响起了小崔急促的问好,说是问我display:inline-block是什么效果,我自己当然不常用过此属性,很严肃地告诉他,“百度一下,谷歌一下,自己再试试”。
当晚,自己做到一个行内的span标签,想给这个span标签定一个高度和宽度,想到了block,不过一想此属性一设定如果不float:left的话岂不是又要换行了。于是,又联想到某次看960.gs系统里面grid定义的时候都用到了display:inline,但是此span本身毕竟不具备div的默认属性,所以光用inline可能还是定不了高度和宽度,于是我想到了inline-block,最后果然奏效,inline-block的用途由此可见。
另一件事就是margin-left,以前经常听同事提起它,同时还会提到ie6,这厮的margin-left默认要是别人的两倍,真不好伺候,一直以来我也会常常以padding-left去代替margin-left,不过自从上次的960.gs事件之后,我决定换一种思路,因为960.gs这套系统里面的margin-left从来没有写过浏览器兼容性相关的多余代码,让我很费解,后来细看看明白了,如果给元素加一个display:inline,再定义margin-left,是可以使ie6两倍的毛病消除的。原来就是这么简单,百度了一下也发现此法早有介绍,惭愧啊惭愧~~
----- add on 2010/2/19 ------
display:block;定义后元素将能够定义高度和宽度
display:inline;定义后元素将能够被外界的text-align:center所控制,
定义display:inline-block;元素将能够具有以上两种属性
---------------------------