绝对定位可以使div脱离标准文档流,产生浮动的效果;而浮动(float)也可以让div脱离标准文档流,产生浮动的效果;
这二者都可以让div脱离文档流,产生浮动效果,那么这二者的区别是?实际中到底用哪个?
绝对定位和浮动的区别
相同点:都会破坏文档流,都会产生浮动;
不同点:浮动时:文档流的其他内容不会忽略浮动的位置,其他内容会绕开;
绝对定位时:文档流的其他内容会忽略浮动的位置,会直接穿过绝对定位所在的div;
0.初始情况:
浏览器效果:
1.父div采取绝对定位的方式:
效果:绝对定位之后破坏了文档流,产生了浮动,但发现,文字忽略(忽视)了div所在的位置,文字进入div浮动的位置,文字被遮挡了,,,,
把div的位置挪动一下:
效果:文字忽略(忽视)了div所在的位置,文字进入div浮动的位置,文字被遮挡了,,
2.父div采取浮动的方式:
下面,因为没有设置position,所以right这个是不生效的。
效果:设置父div浮动后,依然破坏了文档流,产生了浮动效果;但是文字没有忽略div所浮动的位置;
同理,右浮动时候同理:(下面,因为没有设置position,所以right这个是不生效的。)
效果: