默认情况下,所有的网页标签都在标准流布局中,脱离标准流的方法有(1)float所谓浮动指的是使元素脱离原来的文本流,在父元素中浮动起来。(2)position属性 和 left、right、top、bottom属性
相对定位/绝对定位相同点:开启元素的相对定位/绝对定位后,如果不设置偏移量元素不会发生任何变化,会使元素提升一个层级
相对定位/绝对定位不同点:
分类 |
是否脱离文档流 |
定位 |
改变元素性质 |
相对定位 (position:relative) |
否 |
相对定位元素相对于其自身在文档流中的位置来定位 |
相对定位不会改变元素的性质,块元素还是块元素,内联元素还是内联元素 |
绝对定位 (position:absolute) |
是 |
绝对定位的元素是相对于距离他最近的开启了定位的祖先元素进行定位,如果所有的祖先元素都没开启定位,则相对于浏览器窗口进行定位。 |
绝对定位会改变元素的性质。内联变块,块的高度和宽度都被内容撑开,并且不独占一行 |
固定定位(position:fixed)
固定定位是一种特殊的绝对定位,它的特点大部分都和绝对定位一样。不同的是,固定定位的元素永远都是相对于浏览器窗口进行定位的。并且他不会随滚动条滚动