zoukankan      html  css  js  c++  java
  • HTML连载49-清除浮动的第三种方式(内外墙法)

    一、清除浮动的第三种方式

    1.隔墙法有两种​如下:外墙法和内墙法​。​

    2.外墙法

    (1)在两个盒子中间添加一个额外的块级元素

    (2)给这个额外添加的块级元素设置:clear:both;属性

    注意点:外墙法可以让第二个盒子使用margin-top属性

    但是不能让第一个盒子使用margin-bottom属性

    解决方案:为了避免上面的问题,我们在“​墙”所在的元素设置高度就解决这个问题了。

     
    
    <!DOCTYPE html>
    
    <html lang="en">
    
    <head>
    
        <meta charset="UTF-8">
    
        <title>D134_ClearFloatThree</title>
    
        <style>
    
            .box1{
    
                background-color: red;
    
                /*border:1px white solid;*/
    
            }
    
            .box2{
    
                background-color: green;
    
                /*border:1px white solid;*/
    
            }
    
            .box1 p{
    
                width:100px;
    
                background-color: blue;
    
                float:left;
    
            }
    
            .box2 p{
    
                width:100px;
    
                background-color: red;
    
                float:left;
    
            }
    
            .wall{
    
                clear:both;
    
                height:20px;
    
            }
    
    </style>
    
    </head>
    
    <body>
    
    <div class="box1">
    
        <p>我是文字1</p>
    
        <p>我是文字2</p>
    
        <p>我是文字3</p>
    
    </div>
    
    <div class="wall h20"></div><!--这里还复习了一个标签可以定义多个class属性的方式,多个属性可以统一设置样式-->
    
    <div class="box2">
    
        <p>我是文字4</p>
    
        <p>我是文字5</p>
    
        <p>我是文字6</p>
    
    </div>
    
    </body>
    
    </html>

    3.内墙法

    (1)在两个盒子中间添加一个额外的块级元素

    (2)给这个额外添加的块级元素设置clear:both;属性

    注意点:外墙法可以让第二个盒子使用margin-top属性

    也可以让第一个盒子使用margin-bottom属性

    下面我们只修改上面例子的几行代码即可

     
    
            .wall{
    
                clear:both;
    
                /*height:20px;*/
    
            }
    
     .......省略代码........
    
    <div class="box1">
    
        <p>我是文字1</p>
    
        <p>我是文字2</p>
    
        <p>我是文字3</p>
    
        <div class="wall"></div>
    
    </div>
    
     

    4.外墙法与内墙法的区别

    外墙法不能撑起第一个盒子的高度,而内墙法可以撑起第一个盒子的高度​。

    5.​注意点:不常用的外墙和内墙法,外墙法容易降低易读性,不知干什么的;内墙则违背了我们样式设计和内容相分离的初衷,所以仅作了解

    三、源码:

    D134_ClearFloatThree.html

    D135_ClearFloatInternalWallMethod.html

    地址:

    https://github.com/ruigege66/HTML_learning/blob/master/D134_ClearFloatThree.html

    https://github.com/ruigege66/HTML_learning/blob/master/D135_ClearFloatInternalWallMethod.html

    2.CSDN:https://blog.csdn.net/weixin_44630050(心悦君兮君不知-睿)

    3.博客园:https://www.cnblogs.com/ruigege0000/

    4.欢迎关注微信公众号:傅里叶变换,个人账号,仅用于技术交流,后台回复“礼包”获取Java大数据学习视频礼包

     

  • 相关阅读:
    手把手实战:eclipse 搭建 SpringMvc 框架环境
    解决eclipse中Tomcat服务器的server location选项不能修改的问题
    如何解决JSP页面顶端报错 The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path
    第二课 --- git的(管理修改和撤销修改、删除文件)
    第二课 ---git时光穿梭(版本回退)
    第一课——git的简介和基本使用
    001——使用composer安装ThinkPHP5
    微信小程序中对于变量的定义
    微信小程序onLaunch修改globalData的值
    7——ThinkPhp中的响应和重定向:
  • 原文地址:https://www.cnblogs.com/ruigege0000/p/11854391.html
Copyright © 2011-2022 走看看