css float 布局

什么是 float 属性?

float 是一种 CSS 属性,最初是为了在文本环绕图像的情况下而创建的。它允许元素在页面上浮动,以便文本和其他元素可以环绕它。float 属性有两个主要值:leftright。当元素被浮动到左侧时,文本和其他内容会围绕在其右侧,反之亦然。

一.创建简单的两栏布局

使用 float 属性,我们可以轻松创建一个简单的两栏布局。例如,以下是一个包含左侧导航栏和右侧内容的基本布局:

<style>
    .container {
      width: 100%;
    }

    .left-column {
      width: 25%;
      float: left;
    }

    .right-column {
      width: 75%;
      float: left;
    }
</style>

<div class="container">
  <div class="left-column">
    <!-- 左侧导航栏内容 -->
  </div>
  <div class="right-column">
    <!-- 右侧内容 -->
  </div>
</div>

二.清除浮动(最常用的4种)

1.额外标签法(在最后一个浮动标签后,新加一个标签,给其设置clear:both;)(不推荐)

优点:通俗易懂,方便

缺点:添加无意义标签,语义化差

2.父级添加overflow属性(父元素添加overflow:hidden)(不推荐)

优点:代码简洁

缺点:内容增多的时候容易造成不会自动换行导致内容被隐藏掉,无法显示要溢出的元素

3.使用after伪元素清除浮动(推荐使用)

<style>    
    .clearfix:after{
        content: "";
        display: block;
        height: 0;
        clear:both;
        visibility: hidden;
    }
    .clearfix{
        *zoom: 1;
    }
</style>
 
<body>
    <div class="fahter clearfix">
        <div class="mybox">mybox</div>
        <div class="my_bottom">bottom box</div>
    </div>
   
</body>

优点:符合闭合浮动思想,结构语义化正确

缺点:ie6-7不支持伪元素:after,使用zoom:1触发hasLayout.

4.使用before和after双伪元素清除浮动

<style>    
    .clearfix:after,.clearfix:before{
        content: "";
        display: table;
    }
    .clearfix:after{
        clear: both;
    }
    .clearfix{
        *zoom: 1;
    }
 </style>
     <div class="fahter clearfix">
        <div class="mybox">mybox</div>
        <div class="my_bottom">bottom box</div>
    </div>

优点:代码更简洁

缺点:用zoom:1触发hasLayout.

float 的限制和替代方案

尽管 float 属性在某些情况下很有用,但它也有一些限制和问题。例如:

  • 清除浮动问题:需要添加额外的 CSS 来处理浮动元素的清除,以防止布局问题。

  • 不适合复杂布局:对于复杂的多栏或响应式布局,float 可能不是最佳选择。Flexbox 和 Grid 更适合这些情况。

  • 对文档流的影响:使用 float 属性会将元素从正常的文档流中移出,这可能导致一些意外的排列问题。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值