gtomilin
@gtomilin
JavaScript HTML CSS

Есть ли селектор для выбора элемента если за ним идёт определённый другой?

Есть комбиционные селекторы (взято с мозилы девелопер):
смежный селектор A + B
следующего элемента A ~ B
дочерних элементов A > B
потомков A B

Но все влияет только на B, насколько я понимаю.

Допустим у меня есть последовательность классов:

<li class="menu__item">
<li class="menu__item">
<li class="menu__item">
<li class="menu__item">
<li class="menu__item">


и я хочу, чтобы стиль применялся для элемента только если после него есть другой аналогичный элемент (с аналогичным классом), ну или просто если после него идёт другой элемент.
селектор "+" - воздействует на следующий смежный элемент
селектор "~" - воздействует на следующий элемент

а есть ли возможность сделать так чтобы воздействовал на предшествующий элемент, т.е. на выбранный menu__item если у него есть следующий menu__item (или что-либо другое).
Мне кажется я где-то это видел - но уже перегуглил кучу информации не могу найти)
  • Вопрос задан
  • 51 просмотр
Решения вопроса 1
Если правильно вас понял, то вы хотите применять стили для всех, кроме последнего, т.к. после него уже нет таких же элементов, верно? Если да то вам поможет :last-of-type
Что-то такое
.menu__item:not(:last-of-type) {
    // ваши стили
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы