3个DIV浮动的26个组合方式
在研究div浮动的时候,发现div在浮动的时候不仅仅会让父元素的高度塌陷,还会影响到其他的盒子(如图三个盒子)
.father{width: 500px;height:300px;margin:0 auto;border: 2px solid red;}.son1,.son2,.son3{width: 100px;height: 100px;text-align: center;line-height: 100px;font-size: 20px;}.son1{background-color:skyblue;}.son2{background-color: purple;}.son3{background-color: pink;}
<div class="father"><div class="son1">son1</div><div class="son2">son2</div><div class="son3">son3</div></div>
分成三种大情况来讨论就是:(假设用三个相同的盒子设置不同的浮动效果)
(一)只有一个盒子浮动
(二)只有两个盒子浮动
(三)三个盒子都浮动
列举如下:
(一)只有一个盒子浮动
1.1 第一个盒子左浮动
.son1{background-color:skyblue;float: left;}
效果:第一个盒子左浮动后导致高度塌陷,第二个盒子向上挤,盒子挤上去了但是内容没有上去,第三个盒子和内容挤上到了第二个盒子的位置
1.2 第一个盒子右浮动
.son1{background-color:skyblue;float: right;}
效果:第一个盒子右浮动后,父元素高度塌陷,第二个盒子带着内容向上挤到靠近父元素的位置停止,第三个盒子跟在第二个盒子后面向上挤。
1.3 第二个盒子左浮动
.son2{background-color: purple;float: left;}
效果:第一个盒子不动且独占一行,第二个盒子左浮动后,高度塌陷,第三个盒子挤上去,但是内容挤不上去。
1.4 第二个盒子右浮动
.son2{background-color: purple;float: right;}
效果:第一个盒子不动且独占一行,第二个盒子浮动到右边造成高度塌陷,第三个盒子带着内容向上挤。
1.5 第三个盒子左浮动
.son3{background-color: pink;float: left;}
效果:第一个盒子和第二个盒子不动且各自独占一行,第三个盒子左浮动
1.6 第三个盒子右浮动
.son3{background-color: pink;float: right;}
效果:第一个盒子和第二个盒子不动且各自独占一行,第三个盒子右浮动
(二)只有两个盒子浮动
2.1 第一个盒子左浮动,第二个盒子左浮动
.son1{background-color:skyblue;float: left;}.son2{background-color: purple;float: left;}
效果:第一个盒子左浮动,第二个盒子左浮动后并排紧靠,由于浮动造成高度的塌陷,第三个盒子向上挤,但是内容没有上去。
2.2 第一个盒子左浮动,第三个盒子左浮动
.son1{background-color:skyblue;float: left;}.son3{background-color: pink;float: left;}
效果:第一个盒子左浮动造成高度塌陷,第二个盒子向上挤且独占一行但是内容留下,第三个盒子向上挤,停在第二个盒子下面内容与留下的第二个盒子重合。
2.3 第一个盒子左浮动,第二个盒子右浮动
.son1{background-color:skyblue;float: left;}.son2{background-color: purple;float: right;}
效果:第一个盒子左浮动,第二个盒子右浮动去了右边,浮动造成高度塌陷,第三个盒子向上挤,内容没办法挤上去。
2.4 第一个盒子左浮动,第三个盒子右浮动
.son1{background-color:skyblue;float: left;}.son3{background-color: pink;float: right;}
效果:第一个盒子左浮动造成高度塌陷,第二个盒子向上挤独占一行,内容没有上去,第三个盒子只能在第二个盒子下面进行右浮动。
#### 2.5 第一个盒子右浮动,第二个盒子左浮动
.son1{background-color:skyblue;float: right;}.son2{background-color: purple;float: left;}
效果:第一个盒子右浮动,第二个盒子左浮动,浮动造成的内容塌陷,第三个盒子向上挤,内容没有挤上去。
2.6 第一个盒子右浮动,第三个盒子左浮动
.son1{background-color:skyblue;float: right;}.son3{background-color: pink;float: left;}
效果:第一个盒子右浮动造成高度塌陷,第二个盒子向上挤,内容也挤上去了且独占一行,第三个盒子只能在第二个盒子下面左浮动。
#### 2.7 第一个盒子右浮动,第二个盒子右浮动
.son1{background-color:skyblue;float: right;}.son2{background-color: purple;float: right;}
效果:第一个盒子和第二个盒子进行右浮动后并排紧靠且高度塌陷,第三个盒子向上挤,内容也挤上去了。
2.8 第一个盒子右浮动,第三个盒子右浮动
.son1{background-color:skyblue;float: right;}.son3{background-color: pink;float: right;}
效果:第一个盒子右浮动后高度塌陷,第二个盒子和内容向上挤了上去且独占一行,第三个盒子只能在第二个盒子下面右浮动。
2.9 第二个盒子左浮动,第三个盒子左浮动
.son2{background-color: purple;float: left;}.son3{background-color: pink;float: left;}
效果:第一个盒子不动且独占一行,第二个盒子和第三个盒子左浮动并排紧靠。
2.10 第二个盒子左浮动,第三个盒子右浮动
.son2{background-color: purple;float: left;}.son3{background-color: pink;float: right;}
效果:第一个盒子不动且独占一行,第二个盒子左浮动靠左,第三个盒子右浮动靠右。
2.11 第二个盒子右浮动,第三个盒子右浮动
.son2{background-color: purple;float: right;}.son3{background-color: pink;float: right;}
效果:第一个盒子不动且独占一行,第二个盒子和第三个盒子右浮动并排紧靠,且第二个盒子在第三个盒子的右边。
2.12 第二个盒子右浮动,第三个盒子左浮动
.son2{background-color: purple;float: right;}.son3{background-color: pink;float: left;}
效果:第一个盒子不动且独占一行,第二个盒子右浮动,第三个盒子左浮动。
(三)三个盒子都浮动
3.1 第一个盒子左浮动,第二个盒子左浮动,第三个盒子左浮动
.son1{background-color:skyblue;float: left;}.son2{background-color: purple;float: left;}.son3{background-color: pink;float: left;}
3.2 第一个盒子左浮动,第二个盒子左浮动,第三个盒子右浮动
.son1{background-color:skyblue;float: left;}.son2{background-color: purple;float: left;}.son3{background-color: pink;float: right;}
效果:第一、二个盒子左浮动后并排紧靠,第三个盒子右浮动和他们并排不紧靠。
3.3 第一个盒子左浮动,第二个盒子右浮动,第三个盒子右浮动
.son1{background-color:skyblue;float: left;}.son2{background-color: purple;float: right;}.son3{background-color: pink;float: right;}
效果:第一个盒子左浮动和他们并排不紧靠,第二、三个盒子右浮动后并排紧靠。
3.4 第一个盒子左浮动,第二个盒子右浮动,第三个盒子左浮动
.son1{background-color:skyblue;float: left;}.son2{background-color: purple;float: right;}.son3{background-color: pink;float: left;}
效果:第一、三个盒子左浮动后并排紧靠,第二个盒子右浮动和它们并排不紧靠。
3.5 第一个盒子右浮动,第二个盒子右浮动,第三个盒子右浮动
.son1{background-color:skyblue;float: right;}.son2{background-color: purple;float: right;}.son3{background-color: pink;float: right;}
效果:第一、二、三个盒子并排紧靠。但是顺序是从右向左一、二、三
3.6 第一个盒子右浮动,第二个盒子右浮动,第三个盒子左浮动
.son1{background-color:skyblue;float: right;}.son2{background-color: purple;float: right;}.son3{background-color: pink;float: left;}
效果:第一、二盒子并排紧靠,第三个盒子左浮动和它们并排不紧靠。
3.7 第一个盒子右浮动,第二个盒子左浮动,第三个盒子左浮动
.son1{background-color:skyblue;float: right;}.son2{background-color: purple;float: left;}.son3{background-color: pink;float: left;}
效果:第一个盒子右浮动和它们并排不紧靠,第二、三个盒子左浮动并排紧靠。
#### 3.8 第一个盒子右浮动,第二个盒子左浮动,第三个盒子右浮动
.son1{background-color:skyblue;float: right;}.son2{background-color: purple;float: left;}.son3{background-color: pink;float: right;}
效果:第一、三个盒子右浮动并排紧靠,第二个盒子左浮动和它们并排不紧靠。
(四)总结
1)浮动的元素只会对它后面的元素造成影响
2)如果一个元素没有浮动,这个元素肯定会独占一行
3)浮动的时候是元素是先向上,再向左/右,然后停止
4)两个浮动元素会并排显示
3个DIV浮动的26个组合方式相关推荐
- position:fixed和scroll实现div浮动【示例】
原文:position:fixed和scroll实现div浮动[示例] 前言 在自己建站的过程中,要实现一个div随滚动条浮动的效果,网上找了些示例不太好用,还是自己动手,丰衣足食,写的不好请大家谅解 ...
- html的div的间隙,解决DIV浮动间隙
1.解决DIV浮动双倍间距 加属性display:inline; 2.Internet Explorer中Float DIV和Clear DIV之间奇怪间隙的Bug Container: paddin ...
- DIV 浮动层 绝对定位居中浮动 用CSS怎么写 —— 绯色的CSS系列
DIV浮动层绝对居中定位用CSS怎么写?详细解说,直接看样式,下面的写法兼容IE系列浏览器和火狐浏览器. DIV浮动层绝对居中定位用CSS怎么写?下面的写法兼容IE系列浏览器和火狐浏览器. 详细解说, ...
- html div浮动效果,【html】【6】div浮动float
我想 当看完上面的必看链接,拥有一定的基础后也得7天左右, 记住 一定要看完,知道它都有什么,没学会不要紧,哪怕只是有个简单的概念也行, 随着后续的使用慢慢深入学习,现在开始div布局. 必看参考: ...
- html 浮动input框上,INPUT点击触发显示DIV浮动框
发表于:2018-10-20 10:38 阅读: 410次 在项目中,INPUT输入框经常遇到在输入时,需要提示输入信息,介于界面布局没有多余的位置,需要通过DIV浮动框来显示,经过多次修正,将完美的 ...
- 基于javascript的div浮动效果代码
今天接到一个添加网页图片浮动的任务,花了一中午的时间进行了学习和编码,实现了两种方式的图片浮动,这里把遇到的问题和解决的方法做一个总结. 两种实现分别为:1)Z字形浮动 2)反弹浮动: 具体来说,需 ...
- 让相同的div浮动到同一行或者同一列
既然要让div浮动起来,就要用到CSS中的float属性! 先来说一说CSS中的float属性: float 属性定义元素在哪个方向浮动.以往这个属性总应用于图像,使文本围绕在图像周围,不过在 CSS ...
- 加油站优惠券组合方式
加油站优惠券组合方式 题目描述 奥斯汀需要从他所在的城市去另一座城市,他所在城市和目的城市之间有N个收费站.奥斯汀有M种代金券,价值各不相同,他可以在收费站使用,以便继续走到下一个收费站.他有无限量的 ...
- VueJS 中更好的组件组合方式
原文地址:https://itnext.io/better-composition-in-vue-fd35b9fe9c79 原文作者:????Francesco Vitullo 译文出自:????掘金 ...
最新文章
- Go语言 命令行解析(一)
- 关于ubuntu对有线网卡I219-V和无线网卡RTL8723DE 802.11b/g/n的支持问题
- 优化案例(part6)--Feature co-shrinking for co-clustering
- 利用python爬虫(part17)--初识selenium
- 2020年上半年家电市场报告
- 手把手教从零开始在GitHub上使用Hexo搭建博客教程(二)-Hexo参数设置
- Mysql 存储过程实现订单流水号
- oracle查看表空间的几个sql
- 数据结构算法题整理4
- 深度系统linux deepin如何按装,U盘安装深度操作系统(Deepin)的方法
- java更换证件照背景色
- 计算机网络路由交换技术运用,计算机网络路由交换的技术应用与发展趋势研究...
- 图表设计-远不止“好看”这么简单
- 面试题 丑数(10)
- matlab匿名函数如何写,matlab的匿名函数
- unity2.5D动画学习笔记(一):添加人物四向移动动画及脚本
- Maven server structure problem
- python比对excel表数据中的差异_Excel表格中数据比对和查找的几种技巧
- SRAM电路工作原理
- harry-用while循环画对称图形