美文网首页
万能浮动清除方法

万能浮动清除方法

作者: 乡水情缘 | 来源:发表于2017-01-08 10:11 被阅读162次

很多CSS初学者往往很容易被浮动搞得晕头转向,经常碰到有朋友问“为什么我把ul里面的li都向左浮动了,然后我的ul就没有背景了?”等等之类的问题。
此时,如果我们呢给ul加上1px的border的话,就会发现我们的ul从原来的一块变成了一条线,这就是长说的浮动带来的问题。其实解决这个问题,只需要短短的几个属性而已。
我个人的理解是浏览器在解析到浮动的时候,会将浮动的元素脱离开原来的父元素像上层浮起,就像小河里的木板是浮在水面上和河底是不接触的。那么这个时候父元素相当于已经被拿空了,那么当然只会是我们看到的一条线的情况了。所以,对于初学者而言,必须时刻记住需要把浮起的木板再压下去,也就是清除浮动。
这里介绍一个万能的浮动清楚方法:
<style>
ul{overflow:hidden;width:100%}
li{float:left;display:inline-block}
</style>
<ul>
<li></li>
<li></li>
</ul>
只需要给浮动元素的父元素加上overflow:hidden属性就可以很有效的将浮动清楚,阻止元素脱离父元素。但是同时引发了一个新的问题,就是当overflow:hidden会将超出父元素宽度范围的内容隐藏,也就是说我们就可能不能实现竖直的二级导航类的功能了。
此时,另一个万能方法就此诞生
<style>
.box{width:100%}
.float{float:left;display:inline-block}
.clear{clear:both;float:none}
</style>
<div class="box">
<div class="float"></div>
<div class="float"></div>
<div class="clear"></div>
</div>
在父元素的最后添加一个CSS为clear:both;float:none的元素,他可以在在父元素不能overflow:hidden的情况下为您完美解决浮动产生的所有困扰。
总结一下,清楚浮动的方法也就是三个overflow:hidden,clear:both以及float:none

相关文章

  • 万能浮动清除方法

    很多CSS初学者往往很容易被浮动搞得晕头转向,经常碰到有朋友问“为什么我把ul里面的li都向左浮动了,然后我的ul...

  • (17.03.27)清除浮动

    清除浮动的方法: clear:both/left/right;清除浮动;两边/左边/右边

  • 万能清除浮动的方法

  • 常见问题清单及解决方案总结—CSS方面

    css万能清除浮动方法 CSS单行超出省略号显示 CSS多行超出省略号显示 移动端清除输入框阴影 设置input中...

  • 前端面试积累2-清除浮动

    1.清除浮动的方法 方法一:对父级设置适合的CSS高度(不推荐) 方法二:clear:both 清除浮动 (常用)...

  • css问题收集 2018-07-19

    一、 父元素高度无法撑开 原因:1.子元素浮动 解决:清除浮动 清除浮动方法: .clearfix:after{c...

  • 完美clearfix

    clearfix 清除浮动分为两种: 清除自身浮动 清除父级浮动 这里不讲空标签的方法,因为空标签还要额外添加新的...

  • web前端入门到实战:css基础-float浮动

    float实现文字环绕图片效果: 清除浮动的方法一: 在浮动元素后面使用一个空元素 清除浮动的方法二: 给容器添加...

  • web前端入门到实战:css基础-float浮动

    float实现文字环绕图片效果: 清除浮动的方法一: 在浮动元素后面使用一个空元素 清除浮动的方法二: 给容器添加...

  • css3复习

    清除浮动: 方法:clear清除浮动(添加空div法)在浮动元素下方添加空div,并给该元素写css样式: ...

网友评论

      本文标题:万能浮动清除方法

      本文链接:https://www.haomeiwen.com/subject/bvsqbttx.html