HTML 绝对位置是否为其子项创建新的定位系统?

标签 html css css-position

  1. 据我所知,绝对定位元素(例如 span style="position:absolute")将根据其祖先的位置上下文进行定位,但该绝对定位元素不会为其创建新的定位系统 children ,是吗?????

  2. 如果#1 是正确的,谁能告诉我为什么允许在该文档中将 parent 设置为绝对位置? (只需准确搜索引号中的这一行,您就会看到相关段落“将父容器指定为position:relative或position:absolute。” http://phrogz.net/css/vertical-align/index.html

该链接中的父级必须是“相对”的,但不是绝对的,为什么说绝对可以?因为只有相对创建新的定位上下文,所以在那个链接元素符号 #3 中,前 50% 应该不起作用

最佳答案

(1) 正确。定义了定位的元素将相对于最近的 ascestor 定位,该 ascestor 的位置设置为除静态(默认值)以外的任何值。

来自:http://www.w3.org/TR/CSS2/visuren.html#absolute-positioning :

In the absolute positioning model, a box is explicitly offset with respect to its containing block. .... An absolutely positioned box establishes a new containing block for normal flow children and absolutely (but not fixed) positioned descendants

另请注意:相对定位元素和固定定位元素也会为绝对定位元素建立新的包含 block 。

关于HTML 绝对位置是否为其子项创建新的定位系统?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10441767/

相关文章:

html - 如何将div的最小高度设置为视口(viewport)的高度?

css - 背景图片上的html div

html - 如何使 Bootstrap 表内的嵌套表不继承父 Bootstrap "table"类?

定位的 CSS 简写

python - 在 PyQt 中正确定位弹出窗口小部件

javascript - 未显示的空白段落 HTML 元素

jquery - 如何仅删除正确的文本输入?

javascript - bulma 中如何实现 affix navbar bootstrap 效果?

html - 可滚动表格,使用 CSS、Joomla 卡住第一列

html - Paper.js VS EaselJS VS Fabric.js VS KineticJS