浮动简述

css浮动(float:none | left | right)在网页布局中我们经常使用的属性,也是经常会出现Bug的地方。
首先我们要搞清楚为什么要用到float呢?
网页布局中块级元素,在页面中独占一行,自上而下排列。

image

可是我们要实现左右模块该怎么实现,这就需要用到float了,当我把第三个设置左浮动

image

我们通过调整透明度知道,第三个是漂浮在第四个上面的,但是第四个的文字会被挤到第三个后面。我们看到第三个元素并没有浮动到第一个和第二个元素上而是浮动到第四元素上,所以浮动只遮盖后面的元素并把元素内部的文本挤到周边。

然后我们在测试第四个也设置左浮动

image

我们发现第四个并没有浮动到第三个的上面,而是跑到了第三个后面。所以浮动元素在碰到同样是浮动元素的时候会停止浮动。

下面我将第二个和第四个右浮动

image

右浮动和左浮动都是一样的只对后面的元素有影响,碰到同样是浮动元素的时候会停止浮动。

我们在测试将第三个浮动取消

image

我们发现和上个测试的区别,第四个没有紧挨着第二个,而是在第三个下边。从而说明浮动并不能影响他上面的元素。

可是在做网页布局的时候不想浮动元素影响遮盖下一个元素该怎么解决?
这个时候就需要我们清除浮动(clear:both | left | right)
上面的例子 希望第三个左浮动,第二个和第四个右浮动,第五个不受影响在最下面。

image

首先我们要清楚要在那个元素上加清除浮动。我要第五个不受浮动影响,那我就在第五个上加清除浮动,是清除左浮动还是右浮动?谁盖住你 你就清谁的。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 14,680评论 1 92
  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML标准。 注意:讲述HT...
    kismetajun阅读 27,981评论 1 45
  • 学习建议 定位、浮动是 CSS 核心知识点,必须熟练掌握。 1.文档流的概念指什么?有哪种方式可以让元素脱离文档流...
    饥人谷_任磊阅读 4,756评论 0 3
  • css浮动(float:none | left | right)在网页布局中我们经常使用的属性,也是经常会出现Bu...
    DX初学者阅读 3,318评论 0 1
  • 孤独是什么?你害怕孤独吗? 是什么让你痛苦不堪,满是绝望? 每一次,我以为我会死掉的时候,最终又活过来了,我庆幸我...
    眷恋一座城阅读 5,040评论 7 5