css - 相对位置的CSS技巧

标签 css css-position

<分区>


想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post .

关闭 3 年前

我是一名新的网页设计师,所以我决定分析其他 HTML、CSS 代码。我发现了一件奇怪的事。为什么一些开发者应该使用 position: relative 而没有任何 top,left,right,bottom

这里面有什么hack或trick吗?

像这样:

.main {
            position: relative;
            margin: 0;
            overflow-x: hidden;
        }

最佳答案

Position relative 很有用,因为设置了位置的元素(不是static)可用于在其中定位其他元素。因为relative维护的是页面流向的东西,所以不需要设置top, left, rightbottom 值。例如,如果你想使用 absolute 定位 inside a box,你给外框 position: relative。这意味着 inside 中的任何元素都将从相对外框的左上角开始定位。如果父元素没有设置(或继承)定位,它将自己定位到 viewport 而不是盒子。因此,未包装在 relative 包装器中的元素将根据页面定位自身,而 relative 包装器意味着它将相对于定位包装器。

这就是黑客攻击,这就是为什么您会经常看到它的原因。 简而言之:“相对”使该元素保持在流中,而具有其他定位的子级现在将相对于该元素定位。

快速示例

h1 { width: 100%; }
#relative { position: relative; width: 100%; }
.position { position: absolute; top: 20px; left: 20px; border: 1px solid #000;}
<h1>Example:</h1>
<div id="absolute" class="position">Position based on page</div>
<div id="relative"><div class="position">Position based on box</div></div>

关于css - 相对位置的CSS技巧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29889160/

上一篇:html - 选择具有来自 div 的额外顶部填充

下一篇:html - 悬停在第一个 child 身上会影响最后一个 child

相关文章:

javascript - 并排溢出 2 个文本容器的样式

html - 使用 css 使叠加的 div 相等

html - 隐藏的CSS水平导航子菜单

html - 使绝对定位的 child 随着他们的上级动态调整大小

html - 如何防止 HTML 中的 Division 标签扭曲

html - CSS 文本向右对齐但在换行符处向左对齐

css - 强制为移动网站输入数字

css - 固定位置向右浮动导航?

css - 相对于父 div 定位颜色框

css - iOS 防止位置固定元素缩放