Pravidla CSS -Priority (hmotnost)

Věděli jste, že CSS má konkrétní váhu pro každé pravidlo stylu? To je velmi aspekt CSS, protože se vyhne všem nesrovnalostem mezi tím, co chcete získat, a tím, co dostanete do reality.

Příklad:

Vyzkoušejte následující kód HTML:

 div {barva pozadí: modrá;} 

Výsledkem bude modrý čtverec 100X100 px.

Nyní k ní přidejte třídu:

 div {background-color: blue;}. MaDiv {barva pozadí: červená;} 

Náměstí se změnilo na červené!

Nyní použijte ID:

 div {background-color: blue;} .maDiv {background-color: red;} #maDiv {barva pozadí: žlutá;} 

Náměstí je nyní žluté, protože ID je silnější než třída.

Další použití a definuje značky ithe stylu:

 div {background-color: blue;}. MaDiv {barva pozadí: červená;} # MaDiv {barva pozadí: žlutá;} 

Náměstí se změní na zelené: zatímco teoreticky mu byly přiřazeny čtyři různé barvy!

Váhy

Tyto výsledky jsou důsledky váhy (nazývané také pravidla priority) CSS:

  • Hmotnost značky je 1
  • Váha třídy je 10.
  • Hmotnost ID je 100.
  • Hmotnost atributu stylu je 1000.

Jedná se o základní váhu, existují další, například pseudo-třídy (: hover, : after, : focus ...). Příklad atributu CSS: vznášecí prvek přidává prvek jen malou váhu, když je kurzor myši předán.

Akumulace hmotnosti

Pravidlo stylu pak může mít střední hmotnost. Opravdu, váha zásobníku.

Příklad:

 div {background-color: blue;} .maDiv {background-color: red;} .maDiv {barva pozadí: žlutá;} 

Jak vidíte, mám prvek (hmotnost 1) a dvě stejné třídy (hmotnost 10): poslední prvek převezme a naše náměstí je žluté. Nyní po přidání

 div {background-color: blue;} div.maDiv {background-color: red;} .maDiv {barva pozadí: žlutá;} 

Náměstí se změní na červenou. Proč?

  • ".maDiv" - 10
  • "div.maDiv" kombinuje prvek a třídu - 11!

Varování: někdy přidání třídy do pravidla nebude stačit ke zvýšení váhy všech prvků, které byly zahrnuty.

Všimněte si, že

Porovnejte výsledek tohoto kódu:

 div {background-color: blue;} div # maDiv {pozadí-barva: červená;} 

S tímto výsledkem:

 div {background-color: blue;} div #maDiv {background-color: red;} 

V prvním případě je naše div červená, ve druhém případě modrá!

"Ale proč, element + ID =, takže by to mělo být vždy červené!"

Všimněte si jemného rozdílu:

  • div # maDiv : platí pro div s ID "maDiv".
  • div #maDiv : Platí pro všechny elementy, jejichž ID je "maDiv" obsažené v rodičovském elementu nazvaném "div".

Naše náměstí se zabývá pouze prvním pravidlem. Obecně platí, že vždy dávejte pozor na to, jak píšete svá pravidla, správně používejte mezery, čárky…

Příklady:

  • p .myClass a {} : pro všechny odkazy obsažené v jakémkoliv prvku, jehož třída je "myClass", všechny obsažené v libovolném

    živel. Hmotnost: 12.

  • p.myClass, a {} : pro všechny odkazy a všechny

    jehož třída je "myClass". Hmotnost: 11 nebo 1

  • p, .myClass, a {} : pro všechny odkazy a všechny prvky, jejichž třída je "myClass" a všechny

    živel. Hmotnost: 1 až 10 nebo 1

Předchozí Článek Následující Článek

Nejlepší Tipy