当前位置:
查看详情
父DIV不会随着子DIV大小变化面变化的解决办法
所属分类:
行业资讯
点击率:
471
日期:
2014-11-01 07:28:00
最近在为一个客户网站做排版的时候,碰到这么一个问题,父DIV未设置高大,然后里面包了几个子DIV,按理说,父DIV会跟着里面的子DIV的高度变化而变化,这样外面的DIV才能完整的包住里面的子DIV,但是,奇怪的是,我碰到的这个情况却是父DIV一直没变化,代码大致如下:
<div style="width:1000px;margin:0 auto;border:1px #f00 solid;">
<div style="width:270px;float:left;background:#000"></div>
<div style="width:720px;padding-left:10px;float:left;background:#00f;"></div>
</div>
大致效果如下图:
一直在找原因,始终没找到解决办法,最后找了很多资料才发现原来是float导致的,像上面这段代码,使用了左浮动,从而导致里面的两个DIV未完全遵循W3C标准,简单的说就是里面两个DIV浮动后,就位置而言,已经不属于外面那个DIV了,外面那个大DIV就获取不到里面子DIV的大小,从而导致问题的出现。
解决的办法也很简单,只要最后清除浮动就可以了,如下:
<div style="width:1000px;margin:0 auto;border:1px #f00 solid;">
<div style="width:270px;float:left;background:#000"></div>
<div style="width:720px;padding-left:10px;float:left;background:#00f;"></div>
<div style="clear:both;float:none;"></div>
</div>
<div style="width:1000px;margin:0 auto;border:1px #f00 solid;">
<div style="width:270px;float:left;background:#000"></div>
<div style="width:720px;padding-left:10px;float:left;background:#00f;"></div>
</div>
大致效果如下图:
一直在找原因,始终没找到解决办法,最后找了很多资料才发现原来是float导致的,像上面这段代码,使用了左浮动,从而导致里面的两个DIV未完全遵循W3C标准,简单的说就是里面两个DIV浮动后,就位置而言,已经不属于外面那个DIV了,外面那个大DIV就获取不到里面子DIV的大小,从而导致问题的出现。
解决的办法也很简单,只要最后清除浮动就可以了,如下:
<div style="width:1000px;margin:0 auto;border:1px #f00 solid;">
<div style="width:270px;float:left;background:#000"></div>
<div style="width:720px;padding-left:10px;float:left;background:#00f;"></div>
<div style="clear:both;float:none;"></div>
</div>
上一条记录:SEO能够给企业带来什么价值?
下一条记录:无