首先,先描述一下本人在学习DIV设置浮动时所遇到的问题,
后续会给出本人仅有的一些理解,若有错误之处,万望指出。谢谢
1.所遇问题
设置了两个div块,第一个div块设置float="left"向左浮动,第二个div块没有设置,问题是第二个div块的宽度并不是如代码中设置的那么宽。
设置div标签浮动
第一个div标签
第二个div标签
2.
将代码中注释掉的部分,去除注释,添加第三个div框,与第二个div的width属性相同,观察效果,得如图。
这时发现上面两个div框和第三个div框的宽度一致。
3.
至于说为什么这样,具体原理还没搞懂。。。见谅,以下是我的一些浅薄理解
(1)第一个div标签设置float属性,对本身并没有影响,只会影响后续的div标签。
(2)第二个div标签的width并没有改变,只是被第一个div标签给遮挡住了(毕竟第一个浮动了。。),其中第二个div标签中的文本内容会正常显示。
更改一下这几个div标签的width不难证明,假如第一个div标签的width比第二个大,或者第一个div的width小于第二个div的width,但是并不足以显示第二个div中的文本内容时,第二个标签内的文本会换到下一行。
我们会看到如下图:
设置div标签浮动
第一个div标签
第二个div标签
第三个div标签
虽然,第二个div中的文本内容像是另起了一行,但实际上并不是,仍然和上面的为一个块级元素。
只能理解到这一步了,还望各位不吝赐教。