首页 > 其他分享 >11月10日浮动float以及清除浮动clear

11月10日浮动float以及清除浮动clear

时间:2023-11-10 14:46:19浏览次数:36  
标签:浮动 11 10 float 100px height width background

目录

浮动

在css中,任何元素都可以浮动。

浮动元素会生成一个块级框,而不论它本身是何种元素。

关于浮动的两个特点:

浮动的框可以向左或向右移动,直到它的外边缘碰到包含框或另一个浮动框的边框为止。

由于浮动框不在文档的普通流中,所以文档的普通流中的块框表现得就像浮动框不存在一样。

可以这么理解就是这个框我让它漂浮到外边框的其中一处然后停在那里。

浮动的需要的属性float

该属性的值如下表格

描述
left 元素向左浮动。
right 元素向右浮动。
none 默认值。元素不浮动,并会显示在其文本中出现的位置。
inherit 规定应该从父元素继承float属性的值。

当float的值为left时

具体代码如下


<!--float的值为left的情况-->
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        #div1{
            height: 100px;
            width: 100px;
            background-color: red;
            float: left;
        }
    </style>


</head>
<body>
<div id="div1">123</div>
</body>
</html>

效果如图

当float值为right时

具体代码如下

<!--float的值为right的情况-->
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        #div1{
            height: 100px;
            width: 100px;
            background-color: red;
            float: right;
        }
    </style>






</head>
<body>
<div id="div1">123</div>
</body>
</html>

效果如下

当float属性值为none时

具体代码如下

<!--float的值为none的情况-->
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        #div1{
            height: 100px;
            width: 100px;
            background-color: red;
            float: none;
        }
    </style>


    
</head>
<body>
<div id="div1">123</div>
</body>
</html>

效果如图

float属性值为inherit时

具体代码如下

<!--float的值为inherit的情况-->
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>

        #div1{
            height: 100px;
            width: 100px;
            background-color: red;
            float: inherit;
        }
    </style>



</head>
<body>
<div id="div1">123</div>
</body>
</html>

效果如图

浮动的特殊情况

1.多个浮动在浮动的时候如果包含框太窄,无法容纳对应的浮动元素就会两种情况一种就是其中一个框下降,第二种情况就是其中一个框被卡住了

卡住的代码

<!--浮动卡住的情况-->
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>JS Bin</title>
    <style>
        .ct {
  width: 280px;
  height: 300px;
  border: 1px solid;
  margin: 100px;
}
.box {
  color: #fff;
  width: 100px;
  height: 100px;
  background: red;
  float: left;
}
.box1 {
  background: blue;
  height: 120px;
}
.box2 {
  background: pink;
}
    </style>
</head>
<body>
  <div class="ct">
    <div class="box box1">①</div>
    <div class="box box2">②</div>
    <div class="box box3">③</div>
  </div>
</body>
</html>

效果如图

下降的代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>123456</title>
    <style>
        #div0{
            height: 200px;
            width: 200px;
            border: red 1px solid;
        }
        #div1{
            width: 100px;
            height: 100px;
            background-color: deeppink;
            float: left;
        }
        #div2{
            width: 100px;
            height: 100px;
            background-color: orange;
            float: left;
        }
        #div3{
            width: 100px;
            height: 100px;
            background-color: rebeccapurple;
            float: left;
        }
    </style>
</head>
<body>
<div id="div0">
    <div id="div1">
        浮动一
    </div>
    <div id="div2">
        浮动二
    </div>
    <div id="div3">
        浮动三
    </div>
</div>
</body>
</html>

这里让最外面的div宽度为200px,然后就出现了下降的情况

效果如下

clear

clear属性规定元素的哪一侧不允许其他浮动元素。

描述
left 在左侧不允许浮动元素。
right 在右侧不允许浮动元素。
both 在左右两侧均不允许浮动元素。
none 默认值。允许浮动元素出现在两侧。
inherit 规定应该从父元素继承clear属性的值

注意:clear属性只会对自身起作用,不会影响其他元素。

首先为什么会有clear这个属性

就是为了解决父标签塌陷的问题

父标签塌陷的代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
  <style>
    .div0{
      border: orange 1px solid;
    }
    .div1{
      width: 100px;
      height: 100px;
      background-color: rebeccapurple;
      float: left;
    }
    .div2{
      width: 100px;
      height: 100px;
      background-color: greenyellow;
      float: left;
    }
    .div3{
      width: 100px;
      height: 100px;
      background-color: aqua;
      float: left;
    }
  </style>
</head>
<body>
<div class="div0">
  <div class="div1">1浮动</div>
  <div class="div2">2浮动</div>
  <div class="div3">3浮动</div>
</div>
</body>
</html>

具体如图

解决方式

代码如下

<!--解决塌陷的情况-->

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
  <style>
    .div0{
      border: orange 1px solid;
    }
    .div1{
      width: 100px;
      height: 100px;
      background-color: rebeccapurple;
      float: left;
    }
    .div2{
      width: 100px;
      height: 100px;
      background-color: greenyellow;
      float: left;
    }
    .div3{
      width: 100px;
      height: 100px;
      background-color: aqua;
      float: left;
    }
    .clear{
        clear: both;
    }
  </style>
</head>
<body>
<div class="div0">
  <div class="div1">1浮动</div>
  <div class="div2">2浮动</div>
  <div class="div3">3浮动</div>
    <div class="clear"></div>
</div>
</body>
</html>

在父标签里面多添加了一个div标签,这个div标签就是拿来当clear使用。

效果如图

了解伪元素

伪元素清除法:

格式如下

.clearfix:after { content: ""; display: block; clear: both; }

首先需要一个class为clearfix的div标签

具体代码如下

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <style>
        .div0{
            border: red solid 1px;
        }
        .div1{
            background-color: aqua;
            height: 100px;
            width: 100px;
            float: left;
        }
        .div2{
            background-color: rebeccapurple;
            height: 100px;
            width: 100px;
            float: left;
        }
        .div3{
            background-color: chartreuse;
            height: 100px;
            width: 100px;
            float: left;
        }
        .clearfix:after{
            content: "";display: block;clear: both;
        }
    </style>
</head>
<body>
<div class="div0">
    <div class="div1">浮动1</div>
    <div class="div2">浮动2</div>
    <div class="div3">浮动3</div>
    <div class="clearfix"></div>


</div>
</body>
</html>

效果如下

标签:浮动,11,10,float,100px,height,width,background
From: https://www.cnblogs.com/slzjb/p/17824055.html

相关文章

  • 解析Acrel-1000安科瑞变电站综合自动化系统的应用场景——安科瑞李笑曼
    功能:系统提供了完整的SCADA功能,包括主接线图、设备工况、实时数据显示、定值管理、SOE报警/记录/查询/打印、棒图、实时/历史曲线、语音报警、历史信息查询、用户权限管理、各种运行数据统计分析报表等。系统可以协助运维人员快速故障分析、定位和排除问题,对配电系统和用电设备进行......
  • el-table fixed 之后 遮挡滚动条 或者 左浮动之后 遮挡合计列 滚动条不能拖动
    1.第一步讲浮动的table事件穿透.el-table__fixed,.el-table__fixed-right{ pointer-events:none;}/*表格固定列-鼠标事件穿透*/2.第二步 操作列浮动后按钮可点击.el-table__fixedtd,.el-table__fixed-righttd,.el-table__fixedth,.el-table__fixed-......
  • 2023-11-10 习题选讲
    XLKCSP-S2023A给定一个\(01\)矩阵\(a\)。\(a_{x,y}=1\)则\((x,y)\)有点。求有多少个大小为\(4\)的点集,满足点集中的点刚好为一个正方形的四个顶点。\(n\le500\)发现\(O(n^3)\)不好做,直接bitset压位,\(O(\frac{n^4}{w})\)可以通过。constintN=5e2+......
  • 牛客[编程题] HJ107 求解立方根
    HJ107求解立方根中等  通过率:27.15%  时间限制:1秒  空间限制:32M 描述计算一个浮点数的立方根,不使用库函数。保留一位小数。数据范围:|val|\le20\∣val∣≤20 输入描述:待求解参数,为double类型(一个实数)输出描述:输出参数的立方根。保留一位小数......
  • 静态代码分析工具Helix QAC 2023.3:将100%覆盖MISRA C++2023规则
    静态代码分析工具HelixQAC2023.3:将100%覆盖MISRAC++:2023®规则 HelixQAC2023.3预计将于2023年第四季度发布的新MISRAC++®指南,将100%覆盖MISRAC++:2023®规则。 此外,此版本扩展了对C++20语言支持,并改进了PerforceValidate平台和HelixQAC与Validate的集成,包括其他......
  • 华为认证 | 11月底这门HCIP认证即将发布!
    非常荣幸地通知您,华为认证HCIP-StorageV5.5(中文版)预计将于2023年11月30日正式对外发布。为了帮助您做好学习、培训和考试计划,现进行预发布通知,请您关注。01发布概述基于“平台+生态”战略,围绕“云-管-端”协同的新ICT技术架构,华为公司打造了覆盖ICT领域的认证体系,包含ICT基础设施......
  • 广东鼎丰纸业有限公司选购HS-TGA-103热重分析仪
    广东鼎丰纸业有限公司,作为一家专业生产高品质纸制品的公司,近日,他们做出了一项重要的决策,即选购了我司最新推出的HS-TGA-103热重分析仪。这一决策不仅体现了他们对于提升产品质量的决心,也预示着他们在纸制品研发领域的前瞻性。广东鼎丰纸业有限公司HS-TGA-103热重分析仪作为我司的旗......
  • 永久禁用Windows Defender代码方案(可恢复)【支持Windows10、Windows11】
    永久禁用WindowsDefender代码方案(可恢复)【支持Windows10、Windows11】https://blog.csdn.net/m0_60961651/article/details/131090391代码文件下载地址:https://cloud.189.cn/t/jaieM3raeYjy视频演示文件下载地址:禁用操作(PowerShell要以管理员身份运行,视频演示不规范):https://clo......
  • windows10 使用Xshell时出现丢失msvcr110.dll
    Xshell启动报错如下:无法启动此程序,因为计算机中丢失MSVCR110.dll。尝试重新安装该程序以解决此问题。解决步骤如下:(亲测有效)1.进入网址:https://www.microsoft.com/zh-CN/download/details.aspx?id=30679点击下载; 2.下载以下两个程序包; 3.下载完成后依次安装 安装后......
  • yum源修改基于CentOS Linux release 8.3.2011
    查看系统版本:(8的镜像源都可以用不用分小版本)cat/etc/redhat-release修改centos文件内容sed-i's/mirrorlist/#mirrorlist/g'/etc/yum.repos.d/CentOS-*sed-i's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g'/etc/yum.repos.d/CentOS......