为什么三列布局时,窗口显示时不是响应式显示
为什么在浏览器显示时,缩小窗口时,.right的部分会遮挡.left部分,不是说自动调节吗,响应式的吗?
为什么在浏览器显示时,缩小窗口时,.right的部分会遮挡.left部分,不是说自动调节吗,响应式的吗?
2016-07-25
4-1课程中,
第一个布局是利用浮动,设置三个块级标签div宽度33.33%以达到自适应窗口的目的,此时,不存在遮挡问题。
第二个布局,是利用绝对定位,将左右块级标签脱离文档流,定位在窗口左右两侧,由于这两块div.mian已经脱离了文档流,中间的div则自动上移,由于左右宽度固定,再设置 .main{margin:0 310px 0 210px;}则可以正常显示并自适应内容宽度。
关于遮挡,是由于浏览器解析代码的时候是自上而下的,左侧代码在上面(先解析),右侧代码在下面(后解析),显示在窗口中后解析的层级高于先解析的,由于你已经设置了左右div固定宽度。缩小窗口,自然右侧盖住左侧。
测试:
1、你可以给左侧添加样式 .left{z-index:1;},增加左侧div的层级,你会发现,缩小窗口,左侧盖住右侧了。
2、你可以分别给左右div的宽度设置为 .left, .right{width:30%;},此时,左右块标签的宽度会自适应窗口,就不会有遮挡问题了,但是另一个问题出现了,由于我们的中间块设置了固定的margin值,缩小放大窗口会出现显示问题,至于怎么解决,你自己可以测试一下。
举报