当前位置: 首页 > news >正文

CSS基础知识六(浮动的高度塌陷问题及解决方案)

目录

1.浮动高度塌陷概念

2.下面是几种解决高度塌陷的几种方案:

解决方案一:

解决方案二: 

解决方案三: 


1.浮动高度塌陷概念

在CSS中,高度塌陷问题指的是父元素没有正确地根据其内部的浮动元素或绝对定位元素来计算自身的高度,导致父元素的高度变为0。

2.下面是几种解决高度塌陷的几种方案:

解决方案一:

添加一个没有实际显示效果的盒子

这个盒子主要用来撑开父盒,避免高度塌陷影响其他布局,其实h5给我们提供了伪元素 我们可以利用伪元素代替下面这个盒子。

例如以下效果图中的盒子5:

参考代码:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>article{width: 1500px;/* 如果复合由于各种原因没有设置高度,子盒的浮动会导致父盒的高度塌陷为0。父盒高度塌陷后会影响父盒的兄弟盒子(同级元素如<article>和<footer>)的布局*//* 解决方法1(忘记):把高度加回来就可以了 *//* 解决方法2(没有办法设置高度): *//* height: 900px; */background-color: rgb(128, 128, 128);}#div1{width: 200px;height: 100px;background-color: rgb(255, 0, 0);margin-bottom: 5px;float:left;
}#div2{width: 200px;height: 100px;background-color: rgb(54, 252, 70);margin-bottom: 5px;float:left;}#div3{width: 200px;height: 100px;background-color: rgb(81, 0, 255);margin-bottom: 5px;float:right;}#div4{width: 200px;height: 100px;background-color: rgb(136, 0, 255);margin-bottom: 5px;float:right;}footer{width: 1500px;height: 100px;background-color: rgb(136, 0, 255);}</style>
</head><body><article><div id="div1">盒子1</div><div id="div2">盒子2</div><div id="div3">盒子3</div><div id="div4">盒子4</div><div style="clear:both; ">盒子5</div><!-- 作用:忽略前面盒子移动对它的影响,所以盒子1的原本位置还会在 --><!-- 盒子5没有实际显示效果,主要用来撑开父盒,避免高度塌陷影响其他布局其实h5给我们提供了伪元素 我们可以利用伪元素代替下面这个盒子。--><!-- both清除前面左右浮动对我的影响 -->
</article></body>
</html><!-- 1-5在同一个浮层上 12345 -->
<!-- 当位置不够的时候,会换行 --><!-- 不好的影响, --><!-- 可以做导航栏 -->
解决方案二: 

 通过给父元素设置浮动属性,可以让父元素自动包含其内部的浮动元素。

例如:

. article {float: left;
}
解决方案三: 

利用clear属性

        clear可以用来清除其他浮动元素对当前元素的影响

   none默认值,不清除浮动
  left清除左侧浮动元素对当前元素的影响
right清除右侧浮动元素对当前元素的影响
both清除两侧浮动元素对当前元素的影响,清除对他影响最大的那个元素的浮动

http://www.lryc.cn/news/477904.html

相关文章:

  • 开源模型应用落地-glm模型小试-glm-4-9b-chat-vLLM集成(四)
  • .net为什么要在单独的项目中定义扩展方法?C#
  • 动态规划 —— dp 问题-打家劫舍II
  • Java基础-组件及事件处理(上)
  • Python实例:爱心代码
  • 图解大模型训练系列:序列并行3,Ring Attention
  • pyspark基础准备
  • Netty报错
  • Kafka 之顺序消息
  • Kafka 之批量消息发送消费
  • 【大数据学习 | kafka】kafka的偏移量管理
  • 实景三维赋能森林防灭火指挥调度智慧化
  • 【C++课程学习】:string的模拟实现
  • Linux(VMware + CentOS )设置固定ip
  • 安卓 android studio各版本下载地址(官方)
  • 如何在一个 Docker 容器中运行多个进程 ?
  • poetry 配置多个cuda环境心得
  • 网络编程入门
  • Linux-socket详解
  • SQL Server 2022安装要求(硬件、软件、操作系统等)
  • “众店模式”:创新驱动下的商业新生态
  • 54. 螺旋矩阵
  • 剧本杀小程序,市场发展下的新机遇
  • 【系统架构设计师】论文:论基于 ABSD 的软件开发
  • 为什么OLED透明屏在同类产品中显示效果最好
  • 深度学习基础知识-Batch Normalization(BN)超详细解析
  • 基于单片机的燃气报警阀门系统
  • watch与computed的区别、运用的场景
  • 【ESP32+MicroPython】开发环境部署
  • Vision - 开源视觉分割算法框架 Grounded SAM2 配置与推理 教程 (1)