Почему изображение остается влево только на широкоформатном экране?
Кажется, это не только ответственность за изображение, но и ответственность за макет, и, конечно, его родительский блок.
С учетом следующего HTML:
<div class="page">
<img class="image image--stuck-to-left-on-wide-screen" />
<div class"page__content">
<p>...</p>
<p>...</p>
</div>
</div>
Я бы создал то, что я называю гнездом , это просто элемент, созданный для приветствия дочернего блока. Гнездо - отличный способ определить размер и положение дочернего блока.
Так я бы написал:
<div class="page">
<div class"page__image">
<img class="image" />
</div>
<div class"page__content">
<p>...</p>
<p>...</p>
</div>
</div>
Итак, теперь элемент page__image
может определять всю логику, необходимую нам для позиции. Например, «застрял влево на широком экране»:
@media (min-width: 1200px) {
.page__image {
position: absolute;
left: 0;
}
}
Я не фанат БЭМ-миксов. Концепция действительно близка к тому, что я называю «гнездом», но:
- Гнездо - это не новая концепция, это просто обычный элемент
- Смесь разрушает изоляцию между двумя компонентами.