CSS浮动和清除浮动?

为什么黄色块添加了clear:right右边的橘色浮动还在呀,不应该会往下吗?... 为什么黄色块添加了clear:right 右边的橘色浮动还在呀,不应该会往下吗? 展开
 我来答
网海1书生
科技发烧友

2020-12-25 · 擅长软件设计、WEB应用开发、小程序
网海1书生
采纳数:12311 获赞数:26228

向TA提问 私信TA
展开全部

清除浮动并不是指清除浮动元素本身的浮动,而是在浮动元素的外面(前面或后面)进行清除,也就是清除浮动元素对其他后续元素的影响。浮动元素相当于漂浮在空中,那么它原来在地面所占用的位置就被收回了,后面的其他元素就会自动占用这个位置(具体表现就类似于其他元素钻到这个浮动元素的下面去了),而清除浮动的意思就是把浮动元素原来在地面的占用位置找回来,这样后面的其他元素的位置就不会受这个浮动元素的影响了。

具体做法可以在浮动元素的后面插入一个块级元素来清除浮动,下面是最简单的一种:

<div class="d1"></div>

<div class="d2"></div>

<br style="clear:both"/>

<div class="d3"></div>

匿名用户
2020-12-25
展开全部
设置好每一块的浮动位置啊,最好用上display:block
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
djhty1999
2020-12-25 · TA获得超过305个赞
知道小有建树答主
回答量:552
采纳率:67%
帮助的人:67.7万
展开全部
在代码中放一个空的div标签,然后给这个标签设置clear:both来清除浮动对页面的影响。它的优点是简单,方便兼容性好,但是一般情况下不建议使用该方法,因为会造成结构混乱,不利于后期维护
<div id="d1"></div>
<div id="d2"></div>
<div class="clear"></div>
<div id="d3"></div>
清除浮动好像不能靠着本身去清除,要另外给个元素标签作为占位,或者借助:after、before等伪元素来达到清除浮动的效果
#d2:after{
content:"";
display:block;
visibility:hidden;
clear:both;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式