css中的clear_html clear用法

css中的clear_html clear用法之前一直不明白clear的意义何在,一直以为clear就是去掉元素本身都浮动属性(即float:none)。最近再次接触到clear才弄明白clear的本来意义。下面直接看实例:1.没有清除浮动.div1{float:left;


Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

之前一直不明白clear的意义何在,一直以为clear就是去掉元素本身都浮动属性(即使元素的float设置为none),如果这样理解就显得clear非常多余。最近再次接触到clear才弄明白clear的本来意义。
下面直接看实例:
1. 没有清除浮动

<html>
    <head>
        <style type="text/css"> .div1{ float: left; width: 100px; background-color: #0f0; word-break: break-all; } .div2{ float: left; width: 100px; background-color: #f00; word-break: break-all; /*clear: left;*/ } .div3{ width: 300px; background-color: #00f; word-break: break-all; } </style>
    </head>
    <body>
        <div class = "div1">
            aaaaaaaaaaaaaaaaa 
        </div>
        <div class = "div2">
            ddddddddddddddddd
        </div>
        <div class = "div3">
            1234567890qwertyuioplkjhgfdsazxcvbnm
            bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
            bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
            bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
            bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
            bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
            bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
        </div>
    </body>
</html>

运行后的结果是:
这里写图片描述
我们可以看到div2跟在div1的后面
2. 清除浮动

    .div2{ float: left; width: 100px; background-color: #f00; word-break: break-all; clear: left; }

运行结果:
这里写图片描述
我们看到div2在div1下面了,但是div2的float并没有被清除(不是float:none,而是float:left),也就是说div2还是向left浮动了,为什么这样说呢,现在我把div2的float设置为none:

.div2{ float: none; width: 100px; background-color: #f00; word-break: break-all; clear: left; }

运行效果:
这里写图片描述
div2因为没有浮动,所以和div3同处在标准流里面,因此可以证明上一步的div2是向left浮动的。此时我们可以明白clear的作用了,就是不让元素本身跟在之前的浮动元素后面,而是在之前元素的下一行进行left/right浮动。

  1. 应用场景举例
    要实现如图的布局:
    这里写图片描述
    目前很多人的做法是:
    在“姓名”和“班级”包裹一个div并是这个div向左浮动,然后再使简介向左浮动,示例代码(普遍做法):
<html>
    <head>
        <style type="text/css"> .div1{ width: 100px; background-color: #0f0; height: 100px; } .div2{ width: 100px; background-color: #f00; height: 150px; } .div3{ float: left; width: 300px; background-color: #00f; height: 300px; overflow: hidden; } .div{ float: left; } </style>
    </head>
    <body>
        <div class="div">
            <div class = "div1">
                姓名
            </div>

            <div class = "div2">
                班级
            </div>
        </div>
        <div class = "div3">
            简介
        </div>
    </body>
</html>

利用clear的做法:

<html>
    <head>
        <style type="text/css"> .div1{ float: left; width: 100px; background-color: #0f0; height: 100px; } .div2{ float: left; width: 100px; background-color: #f00; clear: left; height: 150px; } .div3{ width: 300px; background-color: #00f; height: 300px; overflow: hidden; } </style>
    </head>
    <body>
        <div class = "div1">
            姓名
        </div>

        <div class = "div2">
            班级
        </div>
        <div class = "div3">
            简介
        </div>

    </body>
</html>

现在班级、姓名、简介平起平坐了,不用在班级和姓名外再裹一层了……

参考:
准确理解CSS clear:left/right的含义及实际用途

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/194657.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 获取WebView里的网页文本内容[通俗易懂]

    获取WebView里的网页文本内容

    2022年1月27日
  • 物理地址介绍「建议收藏」

    物理地址介绍在存储器里以字节为单位存储信息,为正确地存放或取得信息,每一个字节单元给以一个唯一的存储器地址,称为物理地址(PhysicalAddress),又叫实际地址或绝对地址。计算(此类计算可直接使用计算机进行计算,总结来说就是进制之间的转换):地址(字节编址)10242^10b1KB100000000001K…

    2022年4月4日
  • Swift 值类型和引用类型

    Swift中的类型分为两类:一,值类型(valuetypes),每个值类型的实例都拥有各自唯一的数据,通常它们是结构体,枚举或元组;二,引用类型(referencetypes),引用类型的实例共享

    2021年12月26日
  • mybatis一级缓存和二级缓存失效_mybatis二级缓存默认开启吗

    mybatis一级缓存和二级缓存失效_mybatis二级缓存默认开启吗1.缓存介绍Mybatis提供查询缓存,如果缓存中有数据就不用从数据库中获取,用于减轻数据压力,提高系统性能。Mybatis的查询缓存总共有两级,我们称之为一级缓存和二级缓存,如图:一级缓存是SqlSession级别的缓存。在操作数据库时需要构造sqlSession对象,在对象中有一个数据结构(HashMap)用于存储缓存数据。不同的sqlSession之间的缓存数据区域(HashMap)是互相…

    2022年9月20日
  • ZooKeeper ACL权限设置

    ZooKeeper ACL权限设置

    2022年3月4日
  • IDEA–IDEA debug断点调试技巧

    目录一、Debug开篇二、基本用法&amp;快捷键三、变量查看四、计算表达式五、智能步入六、断点条件设置七、多线程调试八、回退断点九、中断DebugDebug用来追踪代码的运行流程,通常在程序运行过程中出现异常,启用Debug模式可以分析定位异常发生的位置,以及在运行过程中参数的变化。通常我们也可以启用Debug模式来跟踪代码的运行流程去学习三方框架的源码。…

    2022年4月5日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号