简单来说display:inline-block,就是可以让行内元素或块元素变成行内块元素,可以不float就能像块级元素一样设置宽高,又能像行内元素一样轻松居中。
在ie6中给div设置display:inline-block属性就会出bug。div依然是块元素。但是给span设置该属性就没问题(span本来就是行元素么?挖个坑后续再补充吧。)
我觉得这个方法比较好理解。只摘抄这一个。
方法1:直接让块元素设置为内联对象呈递(设置属性 display:inline),然后触发块元素的 layout(如:zoom:1 等)。兼容各浏览器的代码如下:
#div1 {
display:inline-block;/*兼容ie8以上及符合所有w3c标准的浏览器*/
*display:inline;/*兼容ie67专用的css hack*/
*zoom:1;/*同上*/
}
tips:
zoom属性(用来设置或检索对象的缩放比例。此外比较尴尬的是常常被另作他用,比如触发ie的hasLayout属性,清除浮动、清除margin重叠等。)
取值:
1)normal:使用对象的实际尺寸。
2)<number>:用浮点数来定义缩放比例。不允许负值
3) <percentage>:用百分比来定义缩放比例。不允许负值
愿人们早日远离ie67.web程序员的生活越来越美好。阿门。