首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果父元素是静态的,那么为什么绝对定位元素不相对于其父元素定位呢?

问如果父元素是静态的,那么为什么绝对定位元素不相对于其父元素定位呢?
EN

Stack Overflow用户
提问于 2014-04-25 00:16:56
回答 2查看 78关注 0票数 0

我听说一个绝对定位的元素相对于它的第一个非静态定位的祖先定位自己。但有什么更全面的原因吗?或者,对于静态元素来说,这只是一个任意的选择,而不是正确的选择。

我想我想知道CSS是否有统一的理论,也就是说,一个也许复杂但不那么复杂的理论。以这样一种方式勾勒出位置、静态和绝对的行为,这种相互作用是自然的结果。

我也无法在CSS规范中找到对此规则的明确引用;这可能会有所帮助。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-04-25 00:21:53

仅仅因为强迫人们将元素相对于父元素定位是不必要的限制。如果我想定位一个相对于<body>的元素,该怎么办?如果我想定位一个元素相对于一个特定的祖先呢?好吧,我可以把position: relative设置在目标父母身上。如果没有这个,我需要使用JS。

当然,我不认为这是最好的实现方式。如果我自己写了规范,我会写的:

代码语言:javascript
复制
position: absolute(selector);

但当然,我不写规范。

票数 4
EN

Stack Overflow用户

发布于 2014-04-25 00:31:47

static是任何给定元素的默认位置,除非另有指定。如果绝对定位会把它作为一个参考点,那么你就不能绝对地定位一个元素,除了它的父元素。

为此,指定绝对定位以具有static以外的位置的最近的祖先元素作为参考点(如果没有,则使用视图本身)。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23282083

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档