清除浮动指清除哪里的浮动
来源:2-14 编程练习
qq_秋水_13
2019-07-18 22:51:02
对于清除浮动,老师说是清除元素左边或右边的浮动,难道不是清除元素自身的浮动吗?
2回答
个人是这样理解的,清除浮动是指的是让元素自身不受其他浮点元素效果的影响。
比方说,按照老师那样子写三个div,先只设置第一个div向左浮动,则第二个div会受到第一个div浮动效果的影响,导致其异位(被第一个div遮挡住),如果此时给第二个div设置 clear: left; 则表示第二个div不受前面元素浮动效果的影响,因此不会被遮挡而是另起一行。
同样的,如果前两个div都设置了float: left;则第三个div被遮挡,前两个div并行排列。此时,如果继续给第二个div设置清除左浮动 clear: left;则第二个div又另起一行,而第三个div则会第二个div遮挡。
同学可以做做实验,应该就可以理解了。
好帮手慕星星
2019-07-19
同学你好,
1、给前两个div设置左浮动,然后给第二个清除左浮动,第一个以及第二个元素还是在浮动流中,第三个元素会到顶部显示,只不过第二个不受第一个影响,在当前位置浮动,效果:
2、有一个例子,三个右浮动的div,全部设置去浮动后,都在右边排列,是不是说其实只是他们只是不再受其他影响,所以只是不在一行排列,并不影响他们往右靠?
这个例子理解的没有问题哦,清除浮动并不是去除自身的浮动,而是清除上面浮动元素带来的影响。
祝学习愉快!
相似问题