为什么会出现浮动?什么时候需要清除浮动?清除浮动的方式有哪些?浮动元素引起的问题和解决办法

浮动定位将元素排除在普通流之外,即元素讲脱离文档流,不占据空间。浮动元素碰到包含它的边框或者浮动元素的边框停留。

浮动元素引起的问题:
(1)父元素的高度无法被撑开,影响与父元素同级的元素
(2)与浮动元素同级的非浮动元素(内联元素)会跟随其后
(3)若非第一个元素浮动,则该元素之前的元素也需要浮动,否则会影响页面显示的结构

解决方法:
使用CSS中的clear:both;属性来清除元素的浮动可解决2、3问题,对于问题1,添加如下样式,给父元素添加clearfix样式:

   .clearfix:after{
content: ".";
display: block;
height: 0;
clear: both;
visibility: hidden;
}
.clearfix{
display: inline-block;
}

/* for IE/Mac */

清除浮动的几种方法:
1,额外标签法,<div style="clear:both;"></div>(缺点:不过这个办法会增加额外的标签使HTML结构看起来不够简洁。)
2,使用after伪类

parent:after{

    content:".";
    height:0;
    visibility:hidden;
    display:block;
    clear:both;
   }

3,浮动外部元素
4,设置overflow为hidden或者auto

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

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,796评论 1 92
  • 这篇文章极好,以至于让我受益良多,就一字没有改动的转发过来一丝冰凉老师的文章 需要注意的是,display:tab...
    新晋小牛牛阅读 1,071评论 0 2
  • 一、CSS入门 1、css选择器 选择器的作用是“用于确定(选定)要进行样式设定的标签(元素)”。 有若干种形式的...
    宠辱不惊丶岁月静好阅读 1,619评论 0 6
  • 今天是七夕节,是个满世界都是灯红酒绿的节日。除了那些羡煞旁人的小情侣之外,当然还有些孤零零地单身狗。这个七夕也是我...
    赵着急_阅读 194评论 0 2
  • 1 爱人之间的年龄差,一在谁大谁小,二在大多大少。 男大女小,是恋爱婚配的传统。一般来说,除了年龄相当的之外,男比...
    心智整合阅读 878评论 0 0