为什么绝对定位在body无高度情况下可以使用top百分比,而相对定位不能

.div{width: 200px;height: 200px;background: blue;position: absolute;top: 50%;left: 50%;}  //可以
    .div{width: 200px;height: 200px;background: blue;position: relative;top: 50%;left: 50%;}  //不可以
阅读 2.9k
2 个回答

问问题之前先用下搜索引擎吧

clipboard.png

站内有好几个相同的问题
1
2
3

站外好多就不贴了。 总之 先搜,再问

原理很简单,绝对定位脱离了文档流,绝对定位元素渲染时它依赖的元素已经渲染完成 百分比是可以计算出来的。
而相对定位,子元素的高度会影响父元素,此时父元素高度未知,要等子元素高度确定,父元素高度才确定。

推荐问题