DIV CSS用float时引起背景不正常显示的解决办法

来源:互联网 发布:单身狗的心酸知乎 编辑:程序博客网 时间:2024/05/20 13:37
当div里面套嵌多个用float定义的层是,背景图没有办法在firefox里面显示。
上网搜了一下才找到解决的方法。


  div+css布局无法避免的冗余标签完全严格按照w3c的标准来布局是不可能的,想要在不同版本的浏览器下都表现出漂亮的网页,几乎无可避免地要使用一些多余的标签。


  总结而言,div布局必须用到冗余标签的地方主要有三个:
  一是背景图和背景色,当内层元素的css属性全部为“float:left”时,外层的背景将在mozilla等浏览器下无法显示。这个时候必须要在内外层之间嵌套一个背景层,或是在内层元素最后增加一个“clear:both”的空标签。
  二是当页宽为绝对值时,必须在属性为float的并列元素外嵌套一个宽度为绝对值之和的div,以保证页面放缩时float元素不会“掉下去”。
  三是当需要写底部信息栏时,因不能用position:absolute定位,而必须在所有float的并列元素之外嵌套一个div,以保证高度自动伸缩。同时底部信息栏应具有“clear:both”属性。


我最后的解决方法是,在最后加个<div class="clear"></div> ,然后定义.clear{clear:both;height:0px;} 就可以了。
0 0
原创粉丝点击