CSS父级边框元素塌陷问题的解决办法

本文介绍了CSS中解决父级元素边框塌陷的四种常见方法:1) 重设父级元素高度;2) 添加清浮动div;3) 使用overflow属性;4) 利用伪元素content添加div。通过这些方法,可以确保父级元素正确包含其浮动子元素并显示边框。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 重设父级元素得高度(不建议使用)

<style>
  div{
       background-color: green;
       height: 30px;
       width: auto;
       margin: 0px;
   }
   .img1,.img2{
            float: left;
            opacity: 0.5;
    }
</style>
<body>
    <div>
        <img class="img1" src="../images/2.jpg" height="250px" width="200px"/>
        <img class="img2" src="../images/3.jpg" height="200px" width="250px"/>
    </div>
</body>

效果是这样的在这里插入图片描述
改div大小300px
在这里插入图片描述
可以看到被包括其中了

2. 在所有浮动元素后加一个div标签

<style>
   div{
            border:3px solid #008000;
            width: auto;
            margin: 0px;
   }
   .img1,.img2{
       float: left;
       opacity: 0.5;
   }
   .clear{
            clear: both;
            margin: 0px;
            padding: 0px;
            border:1px solid red;
            height: 5px;
   }
</style>
<body>
    <div>
        <img class="img1" src="../images/2.jpg" height="250px" width="200px"/>
        <img class="img2" src="../images/3.jpg" height="200px" width="250px"/>
        <div class="clear"></div>
    </div>
    
</body>

在这里插入图片描述

3. 为父级元素增加overfloat属性

大多数情况下是hidden,也可以用auto。但用hidden可以保证父类内容不可见,auto超出会加入滚动条

<style>
   div{
       border:1px solid green;
       width: auto;
       margin: 0px;
       overflow: hidden;
   }
   .img1,.img2{
       float: left;
       opacity: 0.5;
   }
</style>
<body>
    <div>
        <img class="img1" src="../images/2.jpg" height="250px" width="200px"/>
        <img class="img2" src="../images/3.jpg" height="200px" width="250px"/>
    </div>
</body>

在这里插入图片描述

4. 用代码添加div

用伪类实现代码添加div,避免加入了空的div标签

<style>
        div{
            border:3px solid #008000;
            width: auto;
            margin: 0px;
        }
        .img1,.img2{
            float: left;
            opacity: 0.5;
        }
        .content::after{
            content: "";
            display: block;
            clear: both;
        }
</style>
<body>
    <div class="content">
        <img class="img1" src="../images/2.jpg" height="250px" width="200px"/>
        <img class="img2" src="../images/3.jpg" height="200px" width="250px"/>
    </div>
</body>

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

撑一把纸伞.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值