float
:用来将区块并排时可以使用,当设定浮动时,其父层会抓不到子层的高度
left
:靠左浮动right
:靠右浮动none
:不浮动,预设值inherit
:继承父层(上层)的设定clear
:当接下来不使用 float 时,会需要清除,不然会导致排版还在上层(抓不到高度)
left
:消除左边的浮动right
:消除右边的浮动both
:消除左右两边的浮动,常用none
:不消除任何浮动,预设值inherit
:继承父层(上层)的设定<div class="clearfix">
,在 CSS 上设定<div style="clear:both"></div>
::after
清除overflow: hidden;
可以观察 box1
、box2
有无 float 的效果
之後把 box3
放入後应该会发现高度位置不对
把 clear 放入後,box3
可确实呈现在最下层
HTML
<div class="wrap">
<div class="box1">b1</div>
<div class="box2">b2</div>
<!-- <div class="clearfix"></div> -->
<div class="box3">b3</div>
</div>
CSS
.wrap {
margin: 0 auto;
width: 500px;
}
.box1 {
width:200px;
background: green;
height:50px;
float:left;
}
.box2 {
width:300px;
background: gray;
height:50px;
float:left;
}
/* .clearfix {
clear:both;
} */
.box3 {
width:500px;
background: blue;
height:60px;
}
用父层的 ::after
清除
.wrap::after {
content: '';
display: table;
clear: both;
}
过程遇到的小问题:在测试时想说不是用 ::after
清除了吗?怎麽 box3
一直没有往下移,清除浮动怎麽没有作用,有发现出什麽问题吗?
解 bug 过程:
box3
的配置::after
的位置引起注意,怎麽 box3
没有在 ::after
的下面?wrap
後清除浮动,但是我的 box3
还包在 wrap
里啊!box3
的 <div>
往下挪出 wrap
外,顺利呈现!虽然是观念上的小问题,但也是花了我不少时间,提供参考
即将完赛,做个结束罗!
工程师太师了: 第2.5话 杂记: 报名的时候没注意到有最低300个字限制阿~~~~(抱头 本来只想...
骇客任务背景特效 教学原文参考:骇客任务背景特效 这篇文章会介绍,如何在 Scratch 3 里使用...
当我们环境有Windows及Samba主机时,可以使用Parrot Security上的Enum4l...
如果上一篇威尔猪讲的 Flex 是十字形排版法,那今天讲的 Grid 就属於棋盘格排版法。它比 F...
铁人赛终於来到最後一天了! 为响应JavaScript菜鸟研究室的主题,最近一个月我们尝试串接过各种...