:nth-last-of-type
Селектор вам изаберете један или више елемената на основу њиховог извора би, према формули. Дефинисан је у спецификацији ЦСС Селецторс Левел 3 као „структурна псеудо-класа“, што значи да се користи за обликовање садржаја на основу односа са родитељским и братским елементима. Функционише исто као :nth-of-type
што бира ставке почев од дна изворног налога, а не од врха.
Претпоставимо да имамо неуређену листу и желимо да истакнемо последњу ставку (у овом тачном примеру, „Четврту ставку“):
- First Item
- Second Item
- Third Item
- Fourth Item
- Fifth Item
Уместо да радимо нешто попут додавања класе у ставку листе (нпр. .highlight
), Можемо да користимо :nth-last-of-type
:
li ( background: slategrey; ) /* select the second-last item */ li:nth-last-of-type(2) ( background: lightslategrey; )
Као што видите, :nth-last-of-type
узима аргумент: ово може бити један цео број, кључне речи „парно“ или „непарно“ или формула. Ако је наведен цео број, изабран је само један елемент - али кључне речи или формула ће прелазити кроз све подређене елементе надређеног елемента и одабрати одговарајуће елементе - слично навигацији ставкама у низу у ЈаваСцрипт-у. Кључне речи „парно“ и „непарно“ су директне (2, 4, 6 итд. Или 1, 3, 5 итд.). Формула је конструисана користећи синтаксу an+b
, где:
- „А“ је целобројна вредност
- „Н“ је дословно слово „н“
- „+“ Је оператор и може бити „+“ или „-“
- „Б“ је цео број и потребан је ако је оператор укључен у формулу
Важно је напоменути да је ова формула једначина и понавља се кроз сваки братски елемент, одређујући који ће бити одабран. „Н“ део формуле, ако је укључен, представља скуп растућих позитивних целих бројева (баш као и понављање кроз низ). У нашем претходном примеру изабрали смо сваки други елемент са формулом 2n
, који је функционисао, јер се сваки пут када је елемент проверен, „н“ повећао за један (2 × 0, 2 × 1, 2 × 2, 2 × 3 итд.). Ако се редослед елемента подудара са резултатом једначине, он се бира (2, 4, 6 итд.). За детаљнија објашњења математике прочитајте овај чланак.
Да бисмо илустровали даље, ево неколико примера ваљаних :nth-last-of-type
селектора:
Погледајте ЦСС-трикове оловке:: нтх-ласт-оф-типе Цхрис Цоииер (@цхрисцоииер) на ЦодеПен-у.
Срећом, не морате увек сами да рачунате - постоји неколико :nth-last-of-type
тестера и генератора:
- ЦСС-Трицкс Тестер
- Тестер Леа Вероуа
Тачке од интереса
:nth-last-of-type
превлачи се кроз елементе почев од дна изворног налога. Једина разлика између њега и тога:nth-of-type
је што се овај понавља кроз елементе почев од дна изворног поретка.:nth-last-of-type
Селектор је веома слична:nth-last-child
, али са једном критичном разликом: то је прецизнији. У нашем примеру изнад дали би исти резултат, јер ми вршимо итерацију само надli
елементима, али ако бисмо понављали сложенију групу браће и сестара,:nth-last-child
покушали би да подударају сву браћу и сестре, а не само браћу и сестре истог типа елемента. Ово открива снагу:nth-last-of-type
-ит циља одређену врсту елемента у аранжману у односу на сличну браћу и сестре, а не на сву браћу и сестре.
Подршка прегледача
Хром | Сафари | Фирефок | Опера | ИЕ | Андроид | иОС |
---|---|---|---|---|---|---|
Извођење радова | 3.2+ | Извођење радова | 9.5+ | 9+ | Извођење радова | Извођење радова |
:nth-last-of-type
је представљен у ЦСС Селецторс Модуле 3, што значи да га старе верзије прегледача не подржавају. Међутим, савремена подршка за прегледаче је беспрекорна, а нови псеудо-селектори се широко користе у производним окружењима. Ако вам је потребна старија подршка за прегледач, или полифил за ИЕ, или користите ове бираче на некритичне начине, уз прогресивно побољшање, што се препоручује.