我在包含文本的其他一些div(.textDisplay
)前面有一個彩色的半透明div(.box
)。其中一個背景div(左側)正確顯示,文字由於透明div覆蓋在上面而褪色。另一個,根本不會消失。我希望兩個div都像左邊那樣顯示。使用變換的背景文字的CSS透明度問題
編輯:我不能修改HTML的結構(它由Elm以嵌套方式生成)。有沒有辦法只用CSS來做到這一點?
編輯2:由於transform
屬性,這是堆棧上下文問題。查看我的答案獲取更多詳情。
.textDisplay {
height: 100%;
width: 100%;
text-align: center;
}
.box {
width: 200px;
padding: 20px;
background-color: #8CA8DA;
position: absolute;
top: 50%;
left: 50%;
margin-left: 20px;
transform: translateY(-50%);
opacity: 0.8;
}
.behind {
position: absolute;
transform: translate(-50%, -50%);
}
<div class="behind" style="left: 100px; top: 100px; width: 127px; height: 127px;">
<div class="content">
<div>
<div class="textDisplay">Test Text 0</div>
<div class="box" style="z-index: 100;">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi molestie ornare ex et cursus. Donec nibh urna, bibendum nec molestie sed, condimentum ut lacus.
</div>
</div>
</div>
</div>
<div class="behind" style="left: 350px; top: 150px; width: 127px; height: 127px;">
<div class="content">
<div>
<div class="textDisplay">Test Text 1</div>
</div>
</div>
</div>
我不能重新排序HTML元素,它們的順序是任意的,由榆樹編譯器決定。查看我對其他答案的評論以及OP中的編輯。 – user2244484