Начална » кодиране на стоките » Окончателното ръководство за псевдокласовете на CSS

    Окончателното ръководство за псевдокласовете на CSS

    Независимо дали сте начинаещ или опитен CSS разработчик, вероятно сте чували за него псевдо-класовете. Най-известната псевдоклас е вероятно : навъртам, което ни позволява да стилизираме елемент, когато той е в състоянието на навиване, когато указателно устройство, като например мишка, е насочено към него.

    Следвайки концепцията на предишните ни постове: auto и CSS Floats, погледнем по-задълбочено псевдокласите в този пост. Ще видим какви са псевдокласовете, как работят, как можем да ги категоризираме, и как те се различават от псевдоелементите.

    Какво са псевдокласи?

    Псевдокласът е ключова дума, която можем да добавим към CSS селекторите, за да определи специална държава на принадлежащия HTML елемент. Можем да добавим псевдо-клас към CSS селектора, като използваме Синтаксис на дебелото черво : като този: a: hover …

    Класът CSS е атрибут, който можем да добавим към елементите на HTML, за които искаме да приложим същите правила за стил, като елементите на горното меню или заглавията на страничните ленти. С други думи, можем да използваме CSS класове групирате или класифицирате HTML елементи които са сходни по един или друг начин.

    Псевдокласовете са сходни с тях в смисъл, че те също са използвани за добавяне на правила за стилове към елементите, които имат една и съща характеристика.

    Но докато истинските класове са дефинирани от потребителя и могат да бъдат забелязани в изходния код, например

    , псевдокласовете са добавени от UA (потребителски агенти), като уеб браузъри, въз основа на текущото състояние на съответния HTML-елемент.

    Цел на псевдокласите

    Най- работа на редовни CSS класове е да класифициране или групови елементи. Разработчиците знаят как да бъдат групирани техните елементи: те могат да формират класове като "елементи от менюто", "бутони", "миниатюри" и т.н. Тези класификации се основават на характеристиките на елементите, които са дадени от самите разработчици.

    Например, ако разработчик реши да използва a

    като миниатюрен обект, който може да класифицира
    с "миниатюрна" класа.

     
    […]

    HTML елементите обаче имат техните общи характеристики въз основа на тяхното състояние, позиция, характер и взаимодействие с страницата и потребителя. Това са характеристиките, които са не обикновено маркирани в HTML кода, но можем насочете ги към псевдокласовете в CSS, например:

    • елемент, който е последно дете в неговия родителски елемент
    • връзка, която е посетена
    • елемент, който е отишъл цял екран.

    Това са характеристиките, които обикновено са насочени към псевдокласовете. За да разберем разликата между класовете и псевдокласовете по-добре, нека предположим, че използваме класа .последно да идентифицира последните елементи в различни родителски контейнери.

     
    • точка 1
    • точка 2
    • т. 3
    • точка 4

    Ние можем да оформим стила на тези последни детски елементи със следния CSS:

     li.last текст-трансформация: главни;  option.last font-style: italic;  

    Но какво се случва, когато последният елемент се промени? Е, ще трябва да преместим .последно клас от предишния последен елемент до текущия.

    Тази караница класовете за обновяване могат да бъдат оставени на потребителския агент, поне за онези характеристики, които са общи за елементите (и като последен елемент е толкова често, колкото може да се получи). като предварително определена :последно дете псевдо-клас наистина е много полезно. По този начин ние не трябва да посочвате последния елемент в HTML-кода, но все още можем да ги оформим със следния CSS:

     li: последно дете text-transform: главни букви;  опция: последно дете font-style: italic; 

    Основни видове псевдокласи

    Има много видове псевдо-класове, като всички те ни предоставят начини за насочване на елементи въз основа на техните характеристики, които иначе са недостъпни или по-трудни за достъп. Ето списък на стандартните псевдокласове в MDN.

    1. Динамични псевдокласи

    Динамичните псевдо-класове се добавят и премахват от HTML елементи динамично, въз основа на състоянието, в което те преминават в отговор на взаимодействията на потребителя. Някои от примерите за динамични псевдокласове са : навъртам, : фокус, : линк, и : посетен, всички от тях могат да бъдат добавени към прикрепен маркер.

     a: посетен цвят: # 8D20AE;  .button: hover, .button: focus font-weight: bold;  

    2. Държавни псевдокласи

    Държавните псевдокласове се добавят към елементите, когато са такива в определено статично състояние. Някои от най-известните му примери са:

    • : проверява които могат да се прилагат за отметки ()
    • :цял екран за да насочите всеки елемент, който в момента се показва в режим на цял екран
    • :хора с увреждания за HTML елементи, които могат да бъдат в деактивиран режим, като например ,