【发布时间】:2020-09-19 23:07:25
【问题描述】:
我有一个带有几个孩子的 flex 容器,我需要在上面添加一个 before 元素。如果父容器是 display: block 则显示 before 元素,但如果是 display: flex 则不显示!有解决办法吗?
:before 不起作用,但子容器样式很好:
<div class="parent">
<div></div>
<div></div>
</div>
<style lang="scss">
.parent {
display: flex;
justify-content: space-between;
position: relative;
&:before {
content: '';
position: absolute;
top: -20px;
height: 20px;
width: 100%;
background: linear-gradient(180deg, transparent, $gray);
}
}
</style>
:before 有效,但破坏了我的子元素样式:
<div class="parent">
<div></div>
<div></div>
</div>
<style lang="scss">
.parent {
display: block;
position: relative;
&:before {
content: '';
position: absolute;
top: -20px;
height: 20px;
width: 100%;
background: linear-gradient(180deg, transparent, $gray);
}
}
</style>
【问题讨论】:
-
在 IE11 中使用 block 和 flex 为我工作。
-
@movac,第一个div元素添加
margin-right:auto;后,是否解决了问题?
标签: css flexbox internet-explorer-11