网站首页 > 技术文章 正文
浮动对于大多数初学者来说都是一个不容忽视的难点,有些初学者光知道浮动而不知道浮动的真正意义。下面跟随源码时代Web前端学科老师看看到底是怎么回事。
浮动创建初衷
在浮动还没出现的时候,当时我们的网页排版还处于一个蛮荒的时代,整个网页中有一两张图片出现都很不错了,而且还是那种图片一行文字一行的排版,如下图:
如果你想布局成左边图片右边文字或者布局成我们平时做笔记的方式,这是候浮动就出现了。所以浮动创建的最初目的,就是为了解决文字环绕效果,听起来来有点抽象,那具体是什么呢。我们看看下面这张图:
究竟浮动后是怎样造成这种现象的呢,我们看看下面这两张图就知道了,如图下:
浮动最初创建的时候是为了解决文字环绕效果,而文字环绕效果会对父元素的高度造成破坏,从而塌陷。简而言之:浮动具有破坏性,导致父元素高度塌陷。而我们常常认为浮动造成父元素高度塌陷是一种bug,这里要告诉大家:这不是bug,而是标准。
浮动实际开发中的运用:
通常我们要么左浮动,要么右浮动
清除浮动:
我们通常都在说清除浮动,其实应该是清除浮动所带来的影响。
常见的清除浮动的三种方式:
1. 在紧接着浮动框的后面新建一个div然后引入样式clear:both
代码:
效果:
注意:在页面中增加冗余标签,违背了语义网的原则,对后期获取元素也增加了不必要的对象
2. 在父级元素中引入overflow:hidden,
这种方式有前提条件:
1) 必须所有的子元素都浮动
2) 父元素不设置高度
代码:
效果:
注意:一旦子元素的大小超过父容器的大小,就会出显示问题
3. 在父元素中使用:after伪选择符,就可以在父容器的尾部自动创建一个子元素
代码:
"content:"020";"是在父容器的结尾处放一个空白字符,
"height: 0;"是让这个这个空白字符不显示出来,
"display: block; clear: both;"是确保这个空白字符是非浮动的独立区块。
效果:
具体用哪种方式清除浮动所带来的影响根据情况而定。
感谢源码时代Web前端学科讲师提供此文章!
本文为原创文章,转载请注明出处(http://www.itsource.cn)!
猜你喜欢
- 2024-10-11 JavaScript实现的转盘抽奖html页面前端源码
- 2024-10-11 前端录屏 + 定位源码,帮你快速定位线上 bug
- 2024-10-11 css+JavaScript实现的二级导航菜单html页面前端源码
- 2024-10-11 交互问卷表单设计html页面前端源码
- 2024-10-11 web前端实战项目(免费送源码+视频)
- 2024-10-11 html5+css3做的响应式企业网站前端源码
- 2024-10-11 小程序源代码:实现一个简易版QQ的前端页面,文末有代码
- 2024-10-11 Dive Into Code: VSCode 源码阅读(一)
- 2024-10-11 web前端:vue源码解析,vue-cli父子组件传递模板
- 2024-10-11 一个月学会web前端(免费送视频+源码)
你 发表评论:
欢迎- 500℃几个Oracle空值处理函数 oracle处理null值的函数
- 494℃Oracle分析函数之Lag和Lead()使用
- 493℃Oracle数据库的单、多行函数 oracle执行多个sql语句
- 481℃0497-如何将Kerberos的CDH6.1从Oracle JDK 1.8迁移至OpenJDK 1.8
- 473℃Oracle 12c PDB迁移(一) oracle迁移到oceanbase
- 468℃【数据统计分析】详解Oracle分组函数之CUBE
- 453℃Oracle有哪些常见的函数? oracle中常用的函数
- 448℃最佳实践 | 提效 47 倍,制造业生产 Oracle 迁移替换
- 最近发表
-
- Spring Boot跨域难题终结者:3种方案,从此告别CORS噩梦!
- 京东大佬问我,SpringBoot为什么会出现跨域问题?如何解决?
- 在 Spring Boot3 中轻松解决接口跨域访问问题
- 最常见五种跨域解决方案(常见跨域及其解决方案)
- Java Web开发中优雅应对跨域问题(java跨域问题解决办法)
- Spring Boot解决跨域最全指南:从入门到放弃?不,到根治!
- Spring Boot跨域问题终极解决方案:3种方案彻底告别CORS错误
- Spring Cloud 轻松解决跨域,别再乱用了
- Github 太狠了,居然把 "master" 干掉了
- IntelliJ IDEA 调试 Java 8,实在太香了
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端react (48)
- 前端aes加密 (58)
- 前端脚手架 (56)
- 前端md5加密 (54)
- 前端富文本编辑器 (47)
- 前端路由 (55)
- 前端数组 (65)
- 前端定时器 (47)
- Oracle RAC (73)
- oracle恢复 (76)
- oracle 删除表 (48)
- oracle 用户名 (74)
- oracle 工具 (55)
- oracle 内存 (50)
- oracle 导出表 (57)
- oracle 中文 (51)
- oracle链接 (47)
- oracle的函数 (57)
- 前端调试 (52)
- 前端登录页面 (48)
本文暂时没有评论,来添加一个吧(●'◡'●)