码迷,mamicode.com
首页 > Web开发 > 详细

css 清除float的方法

时间:2017-12-19 01:21:00      阅读:212      评论:0      收藏:0      [点我收藏+]

标签:title   底部   分享   meta   aot   images   原来   颠覆   float   

      首先我们要理解这个flaot 为什么要清除,作为小白来说直接颠覆了我之前学的内容,因为之前学的东西虽然碰到float后,脱离文档流后给兄弟元素或者父元素造成影响,但是都是通过option来定位 要么绝对 要么相对 ,都是能解决的.
      这个概念才理解的时候,我都想为什么要清除,我都设置了还要清除干嘛?
后来知道 这个清除float 并不是把自身浮动清除,而是相对与前后兄弟标签来说的,也可能相对父级标签;

下面来解释一下:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<style>
    .div1{
        width: 90px;
        height: 90px;
        background-color: steelblue;
        border: 1px red solid;

    }
</style>
<body>
    <div style="background-color: gold; border: 1px solid red;">
        <div class="div1">标签1</div>
        <div class="div1">标签2</div>
        <div class="div1">标签3</div>
        <div class="div1">标签4</div>
        <!--<div style="clear: both; "></div>-->
    </div>
</body>
</html>


技术分享图片

 

因为DIV是块级标签很DIAO的,全部自成一行,如果想在标签一后后面直接跟上div1就要加入float:left;

  技术分享图片

技术分享图片

结果出现的情况是因为原来的父级DIV标签没有设置高度导致高度坍塌,全部脱离文档流后没有东西能撑起高度.原来的边框也就是一条线了!

技术分享图片

就是在底部加入了行标签 ,关键是里面的CSS,clear:both;
他会清除里面所有的兄弟标签的float:left的属性,父级标签也撑起来了,所有的标签1 2 3 4都按左依次排列. 这个方法即让元素按设定浮动,又没有损害父类的高度.可以随着内部标签的增加,父级标签自动的填满背景,不坍塌.结果如下:

技术分享图片

还有另外一种方法:

 

技术分享图片

css 清除float的方法

标签:title   底部   分享   meta   aot   images   原来   颠覆   float   

原文地址:http://www.cnblogs.com/laoguiaabb/p/8058844.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!