Как я могу выбрать все дочерние элементы, кроме последнего?

css css-selectors css3

148991 просмотра

6 ответа

5356 Репутация автора

Как бы я выбрал все, кроме последнего ребенка, используя селекторы CSS3?

Например, получить только последнего ребенка будет div:nth-last-child(1).

Автор: RyanScottLewis Источник Размещён: 04.04.2010 04:17

Ответы (6)


616 плюса

556060 Репутация автора

Решение

Вы можете использовать отрицательный псевдокласс:not() против :last-childпсевдокласса . Будучи представлен CSS селекторов уровня 3, он не работает в IE8 или ниже:

:not(:last-child) { /* styles */ }
Автор: Nick Craver Размещён: 04.04.2010 04:28

22 плюса

7484 Репутация автора

Когда выйдет IE9, будет проще. Однако в большинстве случаев вы можете переключиться на проблему, требующую: first-child и стилизовать противоположную сторону элемента (IE7 +).

Автор: Nicholas Wilson Размещён: 14.04.2010 03:51

10 плюса

4512 Репутация автора

Использование решения Ника Крейвера с selectivizr позволяет использовать кросс-браузерное решение (IE6 +)

Автор: delphi Размещён: 07.02.2011 12:52

29 плюса

415 Репутация автора

Решение Ника Крейвера работает, но вы также можете использовать это:

:nth-last-child(n+2) { /* Your code here */ }

Крис Койер из CSS Tricks сделал хороший тестер для этого.

Автор: Robin B Размещён: 16.04.2014 09:31

95 плюса

6640 Репутация автора

Сделай это проще:

Вы можете применить свой стиль ко всем элементам div и повторно инициализировать последний с помощью : last-child :

например в CSS :

.yourclass{
    border: 1px solid blue;
}
.yourclass:last-child{
    border: 0;
}

или в SCSS :

.yourclass{
    border: 1px solid rgba(255, 255, 255, 1);
    &:last-child{
        border: 0;
    }
}
  • легко читать / запомнить
  • быстро выполнить
  • совместимый с браузером (IE9 +, так как он все еще CSS3)
Автор: Sebastien Horin Размещён: 16.01.2015 11:49

0 плюса

340 Репутация автора

чтобы найти элементы из прошлого, используйте

<style>
ul li:nth-last-of-type(3n){ color:#a94442}  /**/
</style>
Автор: Avinash Malhotra Размещён: 23.03.2016 08:09
Вопросы из категории :
32x32