使用.clearfix:after清除浮动,我的代码为啥没有作用有代码案例
我觉得还是滥用clear:both;其实clear:both的原理是给元素添加margin-top,撑起父容器的高度,浮动元素已经脱离父容器的控制,而是应该把使用clear:both的div放到浮动元素的后面,才会根据浮动元素的各自高度来计算出margin-top的值
■网友
如果你的DIV3不是动态生成的(意思就是没办法在上面附加class或style那么就直接在div3上加一个 clear:both 就好clear清除浮动是相对于同层级的元素而言的div2 的:after是div2的子元素,所以用这个清除浮动当然没有作用。。。
■网友
clearfix清除浮动是给浮动元素的父级加上clearfix类,而不是给浮动元素加上clearfix类。其实你只想清除div2对div3的影响,直接在div3上写clear:both即可。如果非得要用clearfix方法,就给div2加个父级,添上clearfix类,不过多此一举了。clearfix一般用在父级下的子元素均是浮动,为了让父级获得高度,而给父级加上clearfix这个类。
■网友
div:after等同于\u0026lt;div\u0026gt;main\u0026lt;div\u0026gt;after\u0026lt;/div\u0026gt;\u0026lt;/div\u0026gt;是在元素末尾添加,而不是之后完全纯净的html好像不行
■网友
这个问题我也遇到过,首先的你方法适用于 父级元素上,让里面的元素浮动在外侧清除\u0026lt;!DOCTYPE html\u0026gt;\u0026lt;style\u0026gt;.clearfix:after { content:"\\200B"; display:block; height:0; clear:both; } .clearfix{*zoom:1;}/*IE/7/6*/.div1{background:#f00;width:300px;height:200px;float:left;}.div2{background:#0f0;width:350px;height:250px;float:left;}.div3{background:#00f;width:400px;height:300px;}/*.div3{clear:both;}*/\u0026lt;/style\u0026gt;\u0026lt;div class="div clearfix "\u0026gt; \u0026lt;div class="div1"\u0026gt;\u0026lt;/div\u0026gt; \u0026lt;div class="div2"\u0026gt;\u0026lt;/div\u0026gt;\u0026lt;/div\u0026gt;\u0026lt;div class="div3"\u0026gt;\u0026lt;/div\u0026gt;
推荐阅读
- 『先进』长江流域最先进洗舱站在宁投运 油可分离回收,水能循环使用
- 汽车|冬天怎样让车内温度快速升高?座椅加热的最佳使用方式二,外循环的作用总结
- 汽车|迈凯伦Artura不再使用迈凯伦祖传V8引擎了?
- python的html5lib这个库咋使用啊我在网上也没有找到相关文档
- win7中本地连接跟无线网卡同时使用时是怎么样的模式
- 可不可能利用网盘的秒传功能使用伪造的MD5(或其他信息)值进行文件分享
- 为啥很多企业给用户发邮件会使用noreply/no-reply@xx.xx的邮箱
- win10激活的问题
- 全网通的mate8能不能插美国手机卡,在美国使用
- 汽车|首批200辆吉利新能源出租车在长交付使用,充电半小时电量可达80%
