【发布时间】:2020-10-06 10:07:03
【问题描述】:
我需要在相对容器(蓝色)内居中(从左到右)绝对元素(绿色)。子元素(绿色)需要具有动态/未设置的宽度。我宁愿不使用 JavaScript(仅限 CSS 和 html)。
代码:
.relativeParent {
width: 100px;
height: 100px;
background: blue;
position: relative;
overflow: visible;
display: block;
margin-left: 100px;
margin-bottom: 20px;
}
.absoluteChild {
display: block;
background: green;
position: absolute;
}
<div class="App">
<div class='relativeParent'>
<div class='absoluteChild'>test</div>
</div>
<div class='relativeParent'>
<div class='absoluteChild'>asd asdf asdf asdf asdfa sdf</div>
</div>
</div>
【问题讨论】:
-
我的解决方案是
transform: translate(calc(-50% + 50px) , 0);。这只有效,因为我假设父级的 with 将是 100px 并且不会改变。
标签: html css css-position absolute