首页 理论教育基于HTML与CSS网页设计|浮动效果演示

基于HTML与CSS网页设计|浮动效果演示

【摘要】:图8.1例8.1 的运行结果_未使用浮动说明目前并没有使用浮动,4 个div 块作为块级元素在文档流中从上到下一次排列。图8.3例8.3 的运行结果_向右浮动说明secondDiv 因为浮动而脱离了正常的文档流之后,在它之后的thirdDiv 和forthDiv依次向上流动,填补了secondDiv 让出的空间,与之前的firstDiv 形成新的文档流。图8.6运行结果将secondDiv,thirdDic,forthDiv 都设置为向右浮动后的结果如图8.7 所示。

以下代码演示了未使用浮动时的场景。

在网页中放置4 个div 块,使用CSS 样式表分别设置它们的尺寸,另设置不同的背色以易于区分它们。

例8.1:

代码运行结果如图8.1 所示。

图8.1 例8.1 的运行结果_未使用浮动

说明

目前并没有使用浮动,4 个div 块作为块级元素在文档流中从上到下一次排列。

修改上例CSS 代码。为第二个div 块设置向左浮动。

例8.2:

代码运行结果如图8.2 所示。

图8.2 例8.2 的运行结果_向左浮动

说明

此时,第二个div 已经脱离了正常的文档流,漂浮在文档流之上了,第三个和第四个div 跟在第一个div 之后,重新组成了文档流。这也是第三个div 被遮挡了一部分的原因。

再次修改CSS 代码,将第二个div 设置为向右浮动。

例8.3:

代码运行结果如图8.3 所示。

图8.3 例8.3 的运行结果_向右浮动

说明

secondDiv 因为浮动而脱离了正常的文档流之后,在它之后的thirdDiv 和forthDiv依次向上流动,填补了secondDiv 让出的空间,与之前的firstDiv 形成新的文档流。

再次修改CSS 代码,为第二个div 和第三个div 都设置向左浮动。

例8.4:(www.chuimin.cn)

代码运行结果如图8.4 所示。

图8.4 例8.4 的运行结果_向左浮动

说明

secondDiv 和thirdDiv 设置浮动后脱离了文档流漂浮在文档流之上,它们之后的forthDiv 就会向上流动,与firstDiv 一起形成新的文档流。由于forthDiv 高度较小,所以被secondDiv 完全遮挡看不到了。

让secondDiv 和thirdDiv 都向右浮动,将更能说明上面所述。再次修改CSS 代码。

例8.5:

代码运行结果如图8.5 所示。

图8.5 例8.5 的运行结果_向右浮动

上述多个范例中,为secondDiv 设置了浮动,但它从来就没有上浮到firstDiv 的右侧。这是因为:假定A 元素设置了浮动,则根据它的前一个元素是否也设置了浮动分为两种情况。

(1) 如果前一个元素也设置了浮动而脱离了文档流,那么A 元素将上浮到前一个元素同一行的后侧(靠近页面的边界为前,远离页面的边界为后。对于向左浮动,就是位于前一个元素的右边;对于向右浮动,就是位于前一个元素的左边。如果行内剩余的宽度无法容纳,则换到下一行);

(2) 如果前一个元素没有设置浮动仍然位于文档流中,那么A 元素将在前一个元素的下方显示(A 元素的顶边界与前一个元素的底边界平齐)。

将secondDiv,thirdDic,forthDiv 都设置为向左浮动后的结果如图8.6 所示。

图8.6 运行结果

将secondDiv,thirdDic,forthDiv 都设置为向右浮动后的结果如图8.7 所示。

图8.7 运行结果

只为secondDiv 和forthDiv 设置向左浮动的结果如图8.8 所示。

图8.8 运行结果

只为secondDiv 和forthDiv 设置向右浮动的结果如图8.9 所示。

图8.9 运行结果