html自适应_web前端入门到实战:HTML 文档流,设置元素浮动,导致父元素高度无法自适应的解决方法...

9c03a1690d4ffd9fe4415f3197dbdbd5.png

元素浮动定义

float 属性定义元素在哪个方向浮动。以往这个属性总应用于图像,使文本围绕在图像周围,不过在 CSS 中,任何元素都可以浮动。浮动元素会生成一个块级框,而不论它本身是何种元素。

如果浮动非替换元素,则要指定一个明确的宽度;否则,它们会尽可能地窄。

注释:假如在一行之上只有极少的空间可供浮动元素,那么这个元素会跳至下一行,这个过程会持续到某一行拥有足够的空间为止。


why 子元素浮动 会导致父元素 高度塌陷?

这是因为内部的元素设置float:left || right后,就丢失了clear:both和display:block(持怀疑态度)的样式,所以外部的父容器不会被撑开。


举个 :

子元素未设置浮动,父元素自动被撑开

<body><div class="father"><div class="son"></div></div></body>
<style>.father {width: 400px;border: 1px solid blue;}.son {width: 200px;height: 200px;border: 1px solid red;background-color: yellow;}
</style>   

4509ec8c9c17eb48ca0b9823ef170e5d.png

子元素设置浮动,父元素高度塌陷

36db2bb4908b5fde09b176e21ff71ffb.png
<body><div class="father"><div class="son"></div></div>
</body>
<style>.father {width: 400px;border: 1px solid blue;}.son {width: 200px;height: 200px;border: 1px solid red;background-color: yellow;float: left;}
</style>

闭合浮动的常见解决方案

最终,我们要的效果是要跟没设置浮动之前的效果一样,让父元素高度自适应:

4889adc09dd46fbb578d9e43291d1016.png
  • 在浮动元素之后添加清除浮动的子元素:
<div class="father"><div class="son"></div><div class="clearFloat"></div>
</div>
<style>
.father {width: 400px;border: 1px solid blue;
}
.son {width: 200px;height: 200px;border: 1px solid red;background-color: yellow;float: left;
}
.clearFloat {width: 100%;height: 0;clear: both;
}
</style>

父元素设置 overflow: hidden

<div class="father"><div class="son"></div>
</div>
<style>
.father {width: 400px;border: 1px solid blue;overflow: hidden;
}
.son {width: 200px;height: 200px;border: 1px solid red;background-color: yellow;float: left;
}
</style>

是不是很神奇!因为子元素的浮动,会导致父元素误认为content高度为0(即蓝色边框为一条线),所以父元素设成overflow:hidden溢出隐藏的话,直觉上应该子元素由于溢出导致不显示才对。但真实效果是:父元素设成overflow:hidden溢出隐藏后,父元素高度居然自适应了!这是怎么回事呢?是因为 BFC(Block Formatting Context),感兴趣的童鞋,点击链接了解一下哈...

用 :after 伪元素,思路是用:after元素在div后面插入一个隐藏文本”.”,隐藏文本用clear来实现闭合浮动

.father:after {clear: both;content: ".";   //任意文本如“dfgdfg”display: block;height: 0;      //高度为0且hidden让该文本彻底隐藏visibility: hidden;
}

更多大型互联网web前端实战操作,在线解析,学习指导,学习资源,点:【WEB前端资源】

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/534006.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

idea 远程调试_我的天!你竟然不会用IDEA远程调试Tomcat...

# 准备工作明确的远程服务器的IP地址&#xff0c;某些我是&#xff1a;192.168.92.128关掉服务器防火墙&#xff1a;service iptables stop# 本地远程服务器配置添加远程服务器&#xff0c;如下图复制远程服务器自动生成的JVM参数&#xff0c;等下有用&#xff0c;如下图&#…

mysql异步查询 java_基于 mysql 异步驱动的非阻塞 Mybatis

虽然 spring5 也推出了 WebFlux 这一套异步技术栈&#xff0c;这种极大提升吞吐的玩法在 node 里玩的风生水起&#xff0c;但 java 世界里异步依旧不是主流&#xff0c;Vertx 倒是做了不少对异步的支持&#xff0c;但是其对于数据访问层的封装依旧还是挺精简的&#xff0c;传统…

跨域获取后台数据undefined_同源策略amp;JSONP跨域

同源策略&JSONP跨域同源策略 对于同源的定义&#xff0c;MDN给出了这样的解释&#xff1a;如果两个页面的协议&#xff0c;端口&#xff08;如果有指定&#xff09;和主机都相同&#xff0c;则两个页面具有相同的源。如何确定两个页面是否同源&#xff0c;只要比较两个页面…

python 除数不能为零的报错有哪些_【社区精选40】Python错误处理及代码调试方法(文末赠书中奖名单)...

本文整理自爱数据学院中的问答更多精彩问答&#xff0c;进入下方社区网站查看http://www.lovedata.cn/invitation社区精选话题 第40期Python错误处理及代码调试方法一次写完代码程序并能够正常运行的概率很小很小&#xff0c;总会有各种各样的错误bug需要处理。有的报错简单&a…

利用python批量查询企业信息_python实现批量获取指定文件夹下的所有文件的厂商信息...

本文实例讲述了python实现批量获取指定文件夹下的所有文件的厂商信息的方法。分享给大家供大家参考。具体如下&#xff1a;功能代码如下&#xff1a;import os, string, shutil,reimport pefileimport codecs, sysimport wximport struct#输出中打印Unicode字符#sys.stdout co…

mac mysql prefpane_【MySQL数据库开发之一】Mac下配置安装数据库-MySQL

本站文章均为那么从今天开始陆续会更新数据库和Hibernate框架的博文&#xff0c;也是Himi学习的历程记录&#xff0c;希望大家能共同讨论和研究&#xff1b;OK&#xff0c;本篇简单介绍安装吧&#xff0c;首先到MySQL官方网站&#xff1a;如上图&#xff1a;点击DOWNLOAD &…

系统新模块增加需要哪些步骤_想要吸引人流,儿童乐园需要增加哪些新设备呢...

儿童乐园是现今最火爆的一个投资项目&#xff0c;因为它的主要消费群体是孩子&#xff0c;而现在的家长们对孩子们的宠爱&#xff0c;基本都会答应让孩子们去儿童乐园里面玩耍。但是儿童乐园的投资经营者也会遇见一些小问题&#xff0c;例如儿童乐园添加设备要怎么选择呢&#…

php mysql 图像_php-向/从MySQL数据库插入/查看图像

我在DB中插入图像时遇到问题.该表具有以下结构&#xff1a;> id-> INT(3)->自动增量>名称-> VARCHAR(30)> extension-> VARCHAR(10)[可能太短]> img-> MEDIUMBLOB插入图像的PHP代码为&#xff1a;if($_FILES[file][error]0){$result is_uploaded_f…

照片打印预览正常打印空白_小米发布口袋照片打印机,可无墨打印3寸背胶照片...

9月11日消息&#xff0c;小米推出一款小米口袋照片打印机。与之前的小米米家照片打印机相比&#xff0c;这款新品更加小巧便携&#xff0c;体积接近充电宝大小&#xff0c;净重仅181g&#xff0c;便于随身携带。小米口袋照片打印机采用ZINK无墨技术打印&#xff0c;即使用嵌入纸…

c中获取python控制台输出_在真实的tim中用C捕获控制台python打印

我正在尝试从C创建一个python进程&#xff0c;并从python脚本获取打印结果。在这就是我的C代码&#xff1a;namespace ConsoleApp1{public class CreateProcess{public String PythonPath { get; set; }public String FilePath { get; set; }public String Arguments { get; se…

python三大编程语言_程序员最需要的三种编程语言

随着科学技术的进步和新技术的进步&#xff0c;编程语言的种类越来越多&#xff0c;变化是程序员需要跟踪和学习许多语言 然而&#xff0c;有太多的语言无法一一掌握 在目前的形式中&#xff0c;最需要掌握的三种编程语言是 现在判断还不晚 坦白说&#xff0c;找工作很容易 它可…

MySQL优化调优有没有做过_MySQL 调优/优化的 100 个建议

MySQL是一个强大的开源数据库。随着MySQL上的应用越来越多&#xff0c;MySQL逐渐遇到了瓶颈。这里提供 101 条优化 MySQL 的建议。有些技巧适合特定的安装环境&#xff0c;但是思路是相通的。我已经将它们分成了几类以帮助你理解。MySQL监控MySQL服务器硬件和OS(操作系统)调优&…

python语句print(type([1、2、3、4))_Python 学习第一天

一、学习内容1.print:表示输出print (“hello world”)单行注释&#xff1a;#多行注释&#xff1a;“““ ”””2.运算符注意&#xff1a;才表示等于&#xff0c;&#xff01;表示不等于3.位运算符&#xff5e;按位取反&#xff1a;&#xff5e;104.变量和赋值teacher“老马的…

mysql核心参数_MySQL技术体系之核心参数

本文主要基于MySQL 5.7版本的数据库环境&#xff0c;总结my.cnf文件中核心参数的配置使用&#xff0c;让更多的人对MySQL技术体系有更全面、更专业的深度了解。一、客户端核心参数1、port端口号&#xff0c;默认33062、socketSocket文件地址&#xff0c;默认以.sock为文件名称后…

svd降维 python案例_SVD(奇异值分解)Python实现

注&#xff1a; 在《SVD(异值分解)小结 》中分享了SVD原理&#xff0c;但其中只是利用了numpy.linalg.svd函数应用了它&#xff0c;并没有提到如何自己编写代码实现它&#xff0c;在这里&#xff0c;我再分享一下如何自已写一个SVD函数。但是这里会利用到SVD的原理&#xff0c;…

salt 启动mysql_saltsack自动化配置day03:服务部署mysql部署

一、MySQL集群需求分享1、抽象&#xff1a;功能模块把基础的写成通用服务部署也要抽象出来模块redis内存有的多&#xff0c;有的少&#xff0c;可以config set在线更改redis 安装、配置、启动mysql 安装、配置(my.cnf可以统一 目录默认配置可以统一)master: server_id 1111slav…

jtag引脚定义_从逆向分析的角度学习硬件调试技巧JTAG,SSD和固件提取

我想从逆向的角度做了深入了解JTAG&#xff0c;JTAG是许多嵌入式CPU使用的硬件级别调试机制&#xff0c;我希望通过这篇文章从逆向工程师的角度解释如何使用JTAG&#xff0c;并在此过程中提供一些实际示例。0x01 研究目标通过这篇文章&#xff0c;我希望做到以下几点&#xff1…

python virtualenv conda_在vscode中启动conda虚拟环境的思路详解

问题&#xff1a;cudatoolkit cudnn 通过conda 虚拟环境安装&#xff0c;先前已经使用virtualenv安装tf&#xff0c;需要在conda虚拟环境中启动外部python虚拟环境思路&#xff1a;conda prompt即将 [虚拟环境位置] 以参数形式传入 [activate.bat]VSOCDE中的设置添加以下语句{&…

python如何导入图片imread_OpenCV 使用imread()函数读取图片的六种正确姿势

经常看到有人在网上询问关于imread()函数读取图片失败的问题。今天心血来潮&#xff0c;经过实验&#xff0c;总结出imread()调用的四种正确姿势。通常我要获取一张图片的绝对路径是这样做的&#xff1a;在图片上右键——属性——安全——对象名称。然后复制对象名称就得到了图…

python2.7与3.7脚本转换_python 2.7 - python 3.7 升级记录

更换的模块python 3.7 模块名python 2.7 模块名python 3.7 包python 2.7包pymysqlMySQLdbPyMySQLMySQL-pythonpdfminerpdfminerpdfminer.sixpdfminerurllib.parseurlparse自带自带htmlHTMLParser自带HTMLparser语法变化1. print 修改为 print()2. except Exception, e 修改为 e…