• overflow:auto/hidden的应用


    一、自适应两栏布局

    <!DOCTYPE html>
    <html lang="zh-CN">
    <head>
    <meta charset="UTF-8">
    <title>自适应两栏布局</title>
    <style>
    body {
    300px;
    position: relative;
    }

    .aside {
    100px;
    height: 150px;
    float: left;
    background: #f66;
    }
    .main {
    height: 200px;
    background: #fcc;
    overflow:auto;
    <!--当触发main生成BFC后(overflow值可为auto或者hidden,只要不是visible)这个新的BFC不会与浮动的aside重叠。因此会根据包含块的宽度,和aside的宽度,自动变窄。-->
    }
    </style>
    </head>
    <body>
    <div class="aside">1</div>
    <div class="main">2</div>
    </body>
    </html>

    但是,如果是两个图片,而不是两个div,那么如果对图片设置float,在绝大多数浏览器里会认为它左对齐且与相邻元素在同一行显示,所以图片2会和它在同一行内出现,而不会钻到图片1的下面。

    二、清除内部浮动

    <!DOCTYPE html>
    <html lang="zh-CN">
    <head>
    <meta charset="UTF-8">
    <title>清除内部浮动</title>
    <style>
    .par {
    border: 5px solid red;
    300px;
    overflow:auto;<!--因为内部浮动,就脱离了par,当没有加上这个条件时,par如果没有设置高度,就不会被撑开。为达到清除内部浮动,我们可以触发par生成BFC(overflow:auto或者hidden),那么par在计算高度时,par内部的浮动元素child也会参与计算。-->
    }
    .child {
    border: 5px solid green;
    100px;
    height: 100px;
    float: left;
    }
    </style>
    </head>
    <body>
    <div class="par">
    <div class="child"></div>
    <div class="child"></div>
    </div>
    </body>
    </html>

    三、防止margin重叠

    <!DOCTYPE html>
    <html lang="zh-CN">
    <head>
    <meta charset="UTF-8">
    <title>防止margin重叠</title>
    <style>
    p {
    color:#000;
    background:blue;
    200px;
    line-height: 100px;
    text-align:center;
    margin: 100px;
    }
    .wrap{
    overflow:auto;<!-- 原来两个p之间的距离为100px,即margin重叠,当我们在p外面包裹一层容器,并触发该容器生成一个BFC(overflow:auto;或者hidden)。那么两个P便不属于同一个BFC,就不会发生margin重叠了。-->
    }
    </style>
    </head>
    <body>
    <p>Haha</p>
    <div class="wrap">
    <p>Hehe</p>
    </div>

    </body>
    </html>

  • 相关阅读:
    使用 OpCache 提升 PHP 性能
    在线视频开发博客教程
    修正ECMALL在PHP5.3以上版本中无法开启支付方式的BUG
    第二个小项目的讲解后感言
    mybatis进行分页,使用limit
    mybatis传递多个参数值(转)
    一个关于前端页面的小标签<tbody>
    json-lib的一些过滤操作
    关键字volidate和transient(转)
    Java中实现序列化的两种方式 Serializable 接口和 Externalizable接口
  • 原文地址:https://www.cnblogs.com/annie211/p/5932995.html
Copyright © 2020-2023  润新知