.top{width:100%;height:100px;margin:0;background:#ccc;}
.main{width:100%;height:500px;background:red;}
.left{width:200px;height:500px;float:left;background:blue;}
.right{margin-left:210px;width:100%;height:500px;background:green;position:absolute}
.foot{width:100%;height:150px;background:#F90}
.main{width:100%;height:500px;background:red;}
.left{width:200px;height:500px;float:left;background:blue;}
.right{margin-left:210px;width:100%;height:500px;background:green;position:absolute}
.foot{width:100%;height:150px;background:#F90}
已采纳回答 / qq_杜飞_03761348
他们设置 310 和210 是为了让效果图和案例一样,中间div和两边有空白的间距。由于中间的div设置的margin 所以,它的距离是相对于body的距离,你疑问为啥不是和左右两个div的距离,是因为,左右两个div由于设置了absolute 脱离了文档流,也就是相当于相对其他div来说,它类似于透明的空气一般。
2017-12-01
最赞回答 / qq_冇_7
定义了width:100%,就相当于浏览器窗口的可视宽度,或者是已定义宽度的body的宽度。不定义宽度的话,块级元素宽度会自适应。如果不再增加别的样式,宽度也就相当于100%。在此基础上,如果为块级元素增加margin-left 和 margin-right,那么定义了width:100%的块级元素宽度不变,仍就相当于浏览器窗口的可视宽度,或者是已定义宽度的body的宽度。而未定义宽度的块级元素的宽度会在浏览器基可视宽度或者是已定义宽度的body的宽度础上自动减去magin的值。
2017-12-01
.top{height:100px;background:#ccc;}
.main{background:#f00;height:600px;position:relative;overflow:hidden;}父元素定位,overflow隐藏超出的部分
.left{height:600px;width:200px;background:#00f}
.right{height:600px;width:100%;position:absolute;background:#9a9;margin-left:210px;}
.foot{height:100px;background:#aa0;}
.main{background:#f00;height:600px;position:relative;overflow:hidden;}父元素定位,overflow隐藏超出的部分
.left{height:600px;width:200px;background:#00f}
.right{height:600px;width:100%;position:absolute;background:#9a9;margin-left:210px;}
.foot{height:100px;background:#aa0;}
正确代码:
.top{height:100px; background:#4e4e4e;}
.main{width:100%; height:600px;background:red;margin:0 auto;}
.left{ width:30%;height:600px;background:blue;float:left;}
.right{width:68%;height:600px;background:green;float:right;}
.foot{height:100px; background:#F63;}
.top{height:100px; background:#4e4e4e;}
.main{width:100%; height:600px;background:red;margin:0 auto;}
.left{ width:30%;height:600px;background:blue;float:left;}
.right{width:68%;height:600px;background:green;float:right;}
.foot{height:100px; background:#F63;}