带有position: absolute
的元素是 相对于最近的定位祖先定位。哪里 定位元素的位置是除静态之外的任何元素。
我的问题是为什么static
元素被排除在外?
我知道我可以将position: relative;left:0px;top:0px;right:0px;bottom:0px
设置为与position:static
相同,但IMO看起来像是一种解决方法。
答案 0 :(得分:5)
我的问题是为什么要排除静态元素?
因为否则absolute
无法对元素的直接父级以外的任何位置进行定位。
我知道我可以设置位置:相对;左:0px;上:0px;右:0px;下:0px
您无需明确设置距离。只是职位属性会做。
答案 1 :(得分:4)
只需position: relative
即可。
这是一件好事,因为否则浏览器必须对每个元素应用计算,而不是为静态定位采用更短的路径。
这也意味着你可以拥有任意容器,只要它们是静态的,并且仍然有一个元素可以相对于你选择的容器定位。