Показать абсолютно позиционированного ребенка перед родным братом - PullRequest
0 голосов
/ 20 декабря 2018

У меня есть дочерний элемент, который должен находиться перед его родным братом.

.parent {
  background-color: yellow;
  position: relative;
  top: 0;
  left: 0;
  height: 200px;
  width: 200px;
  z-index: 0;
}

.child {
  background-color: red;
  position: absolute;
  top: 10px;
  left: 20px;
  height: 50px;
  width: 150px;
  z-index: 100;
}

.sibling {
  background-color: green;
  position: relative;
  top: -160px;
  left: 100px;
  height: 200px;
  width: 200px;
  z-index: 0;
}
<div class="parent">
  <div class="child">
  </div>
</div>
<div class="sibling"></div>

В этом случае я хочу, чтобы красный div был перед зеленым div.

Моя проблема в том, что родительские элементы зацикленычто означает, что они имеют одинаковый стиль, что означает, что я не могу поэкспериментировать с z-index, чтобы вручную установить индексы, чтобы дочерний элемент был впереди.Что-нибудь еще, что я могу изменить?

1 Ответ

0 голосов
/ 20 декабря 2018

Порядок вашего HTML уже указывает, что зеленый выше желтого.Красный - единственный, для которого вам нужно указать z-index:

.parent {
  background-color: yellow;
  position: relative;
  top: 0;
  left: 0;
  height: 200px;
  width: 200px;
  /* z-index: 0; */
}

.child {
  background-color: red;
  position: absolute;
  top: 10px;
  left: 20px;
  height: 50px;
  width: 150px;
  z-index: 1;
}

.sibling {
  background-color: green;
  position: relative;
  top: -160px;
  left: 100px;
  height: 200px;
  width: 200px;
  /* z-index: 0; */
}
<div class="parent">
  <div class="child">
  </div>
</div>
<div class="sibling"></div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...