现在的位置: 首页 > 综合 > 正文

float脱离文档流

2012年05月10日 ⁄ 综合 ⁄ 共 587字 ⁄ 字号 评论关闭

  问:浮动元素不占任何正常文档流空间,而浮动元素的定位还是基于正常的文档流,然后从文档流中抽出并尽可能远的移动至左侧或者右侧。文字内容会围绕在浮动元素周围。当一个元素从正常文档流中抽出后,仍然在文档流中的其他元素将忽略该元素并填补他原先的空间。
   不过既然浮动元素不占任何正常文档流空间,为什么文字不在DIV下,而是环绕DIV?

 

答:这就是浮动的特性。普通的块级元素处在浮动元素下层,但它内部的文字(以及行内元素)会环绕浮动元素。

浮动的概念源自图片的左/右对齐,而图片左/右对齐的目的就是实现文字环绕图片。

所以说,这就是浮动的特性。

 

 

float
left  :  文档流向对象的右边
right  :  文档流向对象的左边
position
absolute  :  将对象从文档流中拖出,使用 left , right , top , bottom 等属性相对于其最接近的一个最有定位设置的父对象进行绝对定位。如果不存在这样的父对象,则依据 body 对象。而其层叠通过 z-index 属性定义
以上引用CSS2.0手册。

关于文档流这个概念,其实一直没有一个很明确的定义,比较一致的看法就是指文档自上而下的书写顺序。
对于拖出文档流的元素有很多不同的解释,我的观点就是这类元素不会对其周围元素位置产生影响。

 
脱离了文档流的。只是由于ie下经常会遇到haslayout。所以很多时候造成"没有真正脱离”的假象。

 

抱歉!评论已关闭.