清除浮动的问题

清除浮动的问题

一.如下代码,先清除蓝色框浮动后,蓝色框掉在了第二行


  1. <!DOCTYPE html>

  2. <html>

  3. <head>

  4. <title></title>

  5. <meta charset="utf-8">

  6. <style type="text/css">

  7. .centent{width:500px;height:500px;border:1px grey solid;}

  8. .red{height:100px;width:100px;background:red;float:right;}

  9. .green{height:100px;width:100px;background:green;float:right;}

  10. .blue{height:100px;width:100px;background:blue;float:right;clear:both;}

  11. </style>

  12. </head>

  13. <body>

  14. <div class="centent">

  15. <div class="red">1242145313454</div>

  16. <div class="green">9999999d489999999</div>

  17. <div class="blue">7</div>

  18. </div>

  19. </body>

  20. </html>

http://img1.sycdn.imooc.com//climg/5c778daa0001817a06580490.jpg


二。再次将绿色框清除浮动后,绿色框怎么排到第二行了?为什么能挤掉蓝色框的位置?

DOCTYPE html>

<html>

<head>

<title></title>

<meta charset="utf-8">

<style type="text/css">

.centent{width:500px;height:500px;border:1px grey solid;}

.red{height:100px;width:100px;background:red;float:right;}

.green{height:100px;width:100px;background:green;float:right;clear:both;}

.blue{height:100px;width:100px;background:blue;float:right;clear:both;}

</style>

</head>

<body>

<div class="centent">

<div class="red">1242145313454</div>

<div class="green">9999999d489999999</div>

<div class="blue">7</div>

</div>

</body>

</html>

http://img1.sycdn.imooc.com//climg/5c778e89000129cb06280772.jpg

正在回答

登陆购买课程后可参与讨论,去登陆

2回答

你好同学 , 首先要理解一下这里清除浮动的作用是清除上一个元素对自身的影响 . 

例如给蓝色盒子清除浮动 , 那么它清除的就是它前面的绿色盒子对自身的影响 . 在没有清除浮动的时候 , 蓝色盒子会和绿色盒子在一行浮动 .绿色盒子也会受到红色盒子的影响 ,跟它在一行浮动 ,所以三个盒子都会排列在一起 . 当清除浮动后 , 盒子自然就不会和前面的元素在一起浮动了 ,所以绿色盒子会把蓝色盒子挤到下边哦

http://img1.sycdn.imooc.com//climg/5c77970b0001822e05470314.jpg

http://img1.sycdn.imooc.com//climg/5c7797730001a0e107630361.jpg

根据这个作用 , 盒子都是设置的右浮动 ,所以清除浮动的话直接设置清除右浮动即可 ,如下:

http://img1.sycdn.imooc.com//climg/5c7797dc0001a79705300554.jpg

希望对你有帮助 ,祝学习愉快 ,望采纳 .

  • Leeluo 提问者 #1
    我想问:绿色盒子清除浮动后就把蓝色盒子挤到第三行了。为什么蓝色盒子不能继续保持在第二行?绿色盒子可以排在第三行吧?
    2019-02-28 17:47:21
好帮手慕夭夭 2019-02-28 18:28:10

你好同学 ,要从html代码结构顺序上看哦 , 绿色盒子在结构中属于第二个元素 , 它上面是红色盒子 ,下面是蓝色盒子 . 它清除浮动后就会排在红色盒子后面 , 然后蓝色盒子是最后一个元素 , 自然被挤到第三行哦 .  

http://img1.sycdn.imooc.com//climg/5c77b72d0001a9c705740165.jpg

祝学习愉快 ,望采纳 .

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
前端小白入门系列课程
  • 参与学习           人
  • 提交作业       11218    份
  • 解答问题       36713    个

从一个不会编程的小白到一个老司机是需要过程的,首先得入门,学习基础知识,然后才能进阶,最后再到精通,本专题是你走进前端世界的不二选择!

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师