absolute定位会导致当前块对父级高度和宽度的“塌陷”,因为父级元素不知道absolute子元素的宽高),所以这个元素无法支撑起父元素。
而且absolute定位存在兼容性的重灾区:
1.absolute定位在IE,7有兼容性问题,需要触发haslayout
2.触发完haslayout的快递在IE7下有布局bug
3.absolute定位在IE6/7/8下的z-index有兼容性问题。absolute定位需要relative定位做辅助,而造成relative的滥用,也将会使得z-index的bug难以控制。
4.absolute定位在IE6/7下对偏移量解析有兼容性bug
5.absolute定位在IE6/7下的影响marginzhe折叠bug,以及另外一个影响margin的bug
6.absolute定位在IE6下,不指定left/top,出现布局bug
7.absolute定位在IE6下的奇偶bug:如果定位外框高度、宽度为奇数,则IE6下,绝对定位的底定位、右定位会有1像素的误差
当前跨手机和桌面端的页面,主流的布局方案是弹性布局(流体布局)+media query查询。即:
*弹性自适应布局(宽高设置相对父级的百分比+min-width/max-width)
*水平方向上的徽派使用float/display-inline-block
*设置视口user-scalable=no
*针对移动端采用media query 做更细的调节
应避免absolute布局滥用
最新推荐文章于 2022-05-15 22:25:33 发布