Вместо предоставления absolute
позиции для special
и in-transit
, передайте ее оболочке div links-tags
- см. Демонстрацию ниже:
.wrap {
position: relative;
}
.links-tags {
display: flex;
position: absolute; /* ADDED */
top: 0; /* ADDED */
}
.special,
.in-transit {
background: #000;
color: #fff;
padding: 5px;
/*position: absolute;*/
top: 0;
font-size: 10px;
}
<div class="wrap">
<img src="https://via.placeholder.com/200" alt="">
<div class="links-tags">
<div class="special">Lorem Ipsum</div>
<div class="in-transit">in-transit</div>
<div class="icon">
<span>X</span>
<span>Y</span>
<span>Z</span>
</div>
</div>
</div>
РЕДАКТИРОВАТЬ: Это обычно не возможно - но здесь взломать , если мы предположим, что special
и in-transit
имеютширина, составляющая менее 50% заполняемого изображения wrap
:
Создание link-tags
обертывания flexbox с выравниванием flex-line установите на space-between
.
Добавьте width: 50%
к icon
и переведите его на 100% от его размера
См.демо ниже:
.wrap {
position: relative;
}
.links-tags {
display: flex;
position: absolute; /* ADDED */
top: 0; /* ADDED */
flex-wrap: wrap; /* ADDED */
height: 100%; /* ADDED */
align-content: space-between; /* ADDED */
}
.special,
.in-transit {
background: #000;
color: #fff;
padding: 5px;
/*position: absolute;*/
top: 0;
font-size: 10px;
}
.icon { /* ADDED */
width: 50%;
transform: translateY(100%);
}
<div class="wrap">
<img src="https://via.placeholder.com/200" alt="">
<div class="links-tags">
<div class="special">Lorem Ipsum</div>
<div class="in-transit">in-transit</div>
<div class="icon">
<span>X</span>
<span>Y</span>
<span>Z</span>
</div>
</div>
</div>