Почему бы и нет?Конечно, вы можете, и это легко:
- задайте нестатическую позицию нужным элементам;
- установите
z-index
дочернего элемента на -1
; - создать контекст стека в главном контейнере (установив для него
z-index
, opacity
, transforms
или whatelse создает составной слой).
.container {
position: absolute;
z-index: 0; /* or eg. opacity: 0.99;*/
background-color: blue;
color: lightblue;
width: 100%;
height: 100%;
text-align: center;
}
.parent {
position: relative;
background-color: rgba(100, 255, 150, 0.75);
color: green;
width: 50%;
height: 30%;
top: 30%;
left: 20%;
}
.child {
position: absolute;
z-index: -1;
background-color: orange;
color: yellow;
width: 100%;
height: 100%;
top: -50%;
left: 20%;
}
<div class="container">
<span>container</span>
<div class="parent">
<span>parent</span>
<div class="child">
<span>child</span>
</div>
</div>
</div>
(если родительский объект используется в качестве прозрачного слоя, обязательно используйте background-image
или rgba background-color
: дети наследуют opacity
изродитель)