在文档流中,父元素的高度默认是被子元素撑开的,也就是子元素多高,父元素就多高。

但是当为子元素设置浮动以后,子元素会完全脱离文档流,此时将会导致子元素无法撑起父元素的高度,导致父元素的高度塌陷。

由于父元素的高度塌陷了,则父元素下的所有元素都会向上移动,这样将会导致页面布局混乱。

所以在开发中一定要避免出现高度塌陷的问题

方案1

将父元素的高度写死,以避免塌陷的问题出现,但是一旦高度写死,父元素的高度将不能自动适应子元素的高度,所以这种方案是不推荐使用的。

方案2

可以直接在高度塌陷的父元素的最后,添加一个空白的div,由于这个div并没有浮动,所以他是可以撑开父元素的高度的,然后在对其进行清除浮动,这样可以通过这个空白的div来撑开父元素的高度,基本没有副作用

使用这种方式虽然可以解决问题,但是会在页面中添加多余的结构。

BFC简介

根据W3C的标准,在页面中元素都一个隐含的属性叫做Block Formatting Context,简称BFC,该属性可以设置打开或者关闭,默认是关闭的。

当开启元素的BFC以后,元素将会具有如下的特性:

1.父元素的垂直外边距不会和子元素重叠

2.开启BFC的元素不会被浮动元素所覆盖

3.开启BFC的元素可以包含浮动的子元素

开启BFC

1.设置元素浮动 使用这种方式开启,虽然可以撑开父元素,但是会导致父元素的宽度丢失,而且使用这种方式也会导致下边的元素上移,不能解决问题

2.设置元素绝对定位

3.设置元素为inline-block 可以解决问题,但是会导致宽度丢失,不推荐使用这种方式

4.将元素的overflow设置为一个非visible的值

但是在IE6及以下的浏览器中并不支持BFC,所以使用这种方式不能兼容IE6。

在IE6中虽然没有BFC,但是具有另一个隐含的属性叫做hasLayout,

该属性的作用和BFC类似,所在IE6浏览器可以通过开hasLayout来解决该问题

开启方式很多,我们直接使用一种副作用最小的:

直接将元素的zoom设置为1即可

zoom表示放大的意思,后边跟着一个数值,写几就将元素放大几倍

zoom:1表示不放大元素,但是通过该样式可以开启hasLayout

zoom这个样式,只在IE中支持,其他浏览器都不支持

方案3 最佳方案

通过after伪类,选中box1的后边

可以通过after伪类向元素的最后添加一个空白的块元素,然后对其清除浮动,

这样做和添加一个div的原理一样,可以达到一个相同的效果,

而且不会在页面中添加多余的div,这是我们最推荐使用的方式,几乎没有副作用

本文来源于网络:查看 >https://blog.csdn.net/fqx13624921006/article/details/85333665

html 表格点击塌陷,HTML解决高度塌陷相关推荐

  1. 如何解决高度塌陷【超全面】

    高度塌陷是什么? 父元素的高度一般是被子元素或者内容撑开,若设置子元素浮动,则子元素就会脱离文档流,也就撑不开父元素的高度了.从而导致父元素的高度丢失,页面布局混乱 如何解决高度塌陷? 解决高度塌陷的 ...

  2. 解决高度塌陷的几种方法

    引入 进行页面布局时,为了能够达到自适应,通常高度是不会进行固定设置的,而使用float进行元素的浮动后,由于没有内容的高度,所以会发生父元素的高度塌陷问题,为了解决此类问题这里给出了几种解决方法. ...

  3. 在html中通过使用css解决高度塌陷问题

    目录 1. 我们先写两个盒子用来演示 2.接下来我们开始演示 解决方法: 1.给父元素添加一个固定的高度 2.给父元素添加一个overflow: hidden; 3.在父元素里最后添加一个空的块元素 ...

  4. html标签高度塌陷,CSS中如何解决高度塌陷问题

    CSS中如何解决高度塌陷问题 发布时间:2021-06-11 18:23:40 来源:亿速云 阅读:58 作者:Leah 这篇文章将为大家详细讲解有关CSS中如何解决高度塌陷问题,文章内容质量较高,因 ...

  5. HTML外边框塌陷什么意思,html如何解决高度塌陷问题

    本章给大家介绍html如何解决高度塌陷问题.有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助. 高度塌陷的问题: 当开启元素的BFC以后,元素将会有如下的特性: 1 父元素的垂直外边距不 ...

  6. 高度塌陷问题和解决高度塌陷问题

    目录 什么是高度塌陷 解决高度塌陷问题 什么是高度塌陷 在文档流中,父元素的高度默认是由子元素撑开的,等于说子元素多高,父元素就多高,但是当为子元素设置了浮动之后,子元素会脱离文档流,此时,将会导致子 ...

  7. 解决高度塌陷:万能清除法

    逆战班 高度塌陷:当父元素不设置高度时,其他高度会随着里面的子元素的高度的变化而变化,即父元素的高度由子元素的高度撑开,达到高度自适应的目的.而当父元素的**第一级子元素都设置了浮 动**时,父元素不 ...

  8. 解决高度塌陷问题(非BFC解决方式)

    高度塌陷: 1.在文档流中,如果没有设置宽度,则父元素的宽度为auto,父元素高度由内容撑开. 2.如果父元素塌陷,则父元素下的兄弟元素会上移,导致页面布局混乱. 3.当子元素设置浮动,则子元素脱离文 ...

  9. 深度理解 BFC,解决高度塌陷问题

    相信大家在各类前端学习教程或者视频中都会看到这样一段代码 .clearfix::after {content :'';display: block;clear: both; } 我们也知道教程会说给要 ...

最新文章

  1. Javascript及Jquery获取元素节点以及添加和删除操作
  2. 转 Wireshark和TcpDump抓包分析心得
  3. 【BZOJ4069】【APIO2015】巴厘岛的雕塑 [贪心][DP]
  4. php编译减少大小,C++_减小VC6编译生成的exe文件的大小的方法,1、减小VC6编译生成的exe文件的 - phpStudy...
  5. 这大概是一篇最简单最清晰的Java JVM执行流程
  6. JZOJ 1322. 硬币游戏
  7. [李景山php]每天TP5-20170111|thinkphp5-Model.php-4
  8. LeetCode OJ - Convert Sorted List to Binary Search Tree
  9. Hero引擎47个各种问题解答
  10. 基于华为SMProxy开发cmpp2.0(跳坑版)
  11. 鸿蒙os系统3.0电脑,华为鸿蒙系统升级指南,速看!
  12. 国内ERP系统和SAP系统架构存在哪些差异?
  13. 一文带你了解隐私 Layer1
  14. 两台电脑实现串口通信
  15. 手机电视重蹈IPTV覆辙 广电电信争持催生融合标准
  16. SpringCloud 微服务网关Gateway常用限流算法以及简单实现
  17. 修改订单金额!?0.01 元购买 iPhoneX?| Web谈逻辑漏洞
  18. 服务器修复划痕,【DIY】自己动手修复屏幕划痕及建议
  19. python 合并文件夹内所有Excel文件 xslx
  20. 【毕业设计】基于单片机的家庭智能监控系统 - 物联网 stm32 嵌入式

热门文章

  1. AutoCAD中程序化加载.NET程序集的方法
  2. 01组团队项目-Alpha冲刺-1/6
  3. 几款超牛逼的终端命令行工具!好用到爆
  4. python pika 消费mq basic_get方法
  5. 冰河,能不能讲讲如何实现MySQL数据存储的无限扩容?
  6. 人间简史从动物到上帝读后感_从我的博客到上帝的耳朵...
  7. svn安装完成check后无法commit错误信息,及相应的解决办法
  8. 【英语:基础进阶_读写专项训练】G3.记叙文写作
  9. html ide iOS,用于ios开发的ide是 ios开发的ide有哪些
  10. gaitset全代码实现问题总结