美文网首页程序员
CSS基础知识之float

CSS基础知识之float

作者: 劼哥stone | 来源:发表于2016-06-11 01:29 被阅读57次

前段时间写过一篇CSS基础知识之position,当时对float的理解不太准确,被慕课网多名读者指出(原文已修正,如有误导实在抱歉)。现对float进行更深入的学习,在此把学习心得分享给大家。

浮动的基础知识

  • 浮动有4个属性:left(左浮动)、right(右浮动)、none(不浮动)、inherit(继承)。

  • 浮动元素的包含块是其最近的块级祖先元素。


  • 浮动元素会左偏移(或右偏移),直到它的外边界接触到『包含块的内边界』或『另一个浮动元素的外边界』。


  • 浮动元素脱离了标准文档流,文字和行级元素会环绕该元素,块级元素则不受影响。


  • 浮动一个非替换元素,必须为该元素声明一个width,否则元素的宽度趋于0。


  • 浮动元素的margin(外边距)不会与其他元素的margin合并。



浮动的深入研究

  • 浮动元素的顶边不可以高于包含块中先前产生的块级元素或行级元素的顶。
  • 浮动元素之间不可重叠,如果水平方向没有足够的空间放置浮动元素,它将向下移动,直到有足够的空间或没有更多的浮动元素为止。
  • 浮动元素不能溢出包含块的左、右、上边界,仅可溢出下边界。(浮动元素溢出下边界时,部分浏览器会增加包含块的高度,使浮动元素能够包含在包含块中,出现大片空白,导致浏览器兼容性问题。)
  • 浮动元素设置负外边距时,虽然浮动元素看起来溢出了包含块,但实际并没有违反上述规则。
  • 特殊情况,浮动元素比包含块更宽时,浮动元素会在偏移的反方向溢出。

浮动的负作用

  • 背景不能显示
  • 边框不能撑开
  • margin padding 不能正确显示

清除浮动的方法

.clear-float1{ content: “”; display: block; clear: both; }
/* 方法1,当父包含块缩成一条时无效 */
 
.clear-float2{ overflow:hidden; width:100%; }
/* 方法2,overflow:hidden属性相当于是让父级紧贴内容,这样即可紧贴其对象内内容,从而实现了清除浮动。 */
 
.clear-float3{ overflow: auto; zoom: 1; } 
/* 方法3,zoom是在处理兼容性问题,hidden和auto都能清除浮动,据说auto对seo更友好 */

扩展阅读

相关文章

  • CSS基础知识之float

    前段时间写过一篇CSS基础知识之position,当时对float的理解不太准确,被慕课网多名读者指出(原文已修正...

  • css之float

    float - 浮动 原始意义:用来实现让文字环绕图片而已 特性:包裹 于 破坏 辟开浮动的“破坏性”。浮动就是个...

  • CSS之float

    float 属性定义元素在哪个方向浮动。在CSS中,任何元素都可以浮动。浮动元素会生成一个块级框/Block,而不...

  • CSS 之 float

    想必只要是写过CSS的同学,对float属性肯定不陌生。float是在CSS很常用的属性之一了。但有的时候,常用容...

  • web学习CSS6:float浮动

    1.CSS定位机制 普通流 元素的自动样式 2.CSS Float 的 基础知识 3.使用浮动后产生的问题 4.清...

  • 浮动和清除(闭合)浮动

    CSS之float and clear float 浮动和清除(闭合)浮动 目录 1.背景介绍 2.知识剖析 3....

  • CSS理解之Float

    1.Float的设计初衷仅仅是: 实现文字环绕效果,如下图所示: 明白了float的设计初衷,就可以明白float...

  • CSS之浮动float

    浮动 1.1 浮动的元素 在CSS中,浮动通过float属性实现。 取值: left | right | non...

  • Test10

    引用文章: 那些年我们一起清除过的浮动 CSS浮动float详解 Clear Float CSS float浮动的...

  • 好程序员web前端培训之CSS基础知识之position

    好程序员web前端培训之CSS基础知识之position CSS定位机制 标准文档流(Normal flow) 浮...

网友评论

    本文标题:CSS基础知识之float

    本文链接:https://www.haomeiwen.com/subject/fmgsdttx.html