Ättling - CSS-tricks

Anonim

En efterkommande väljare i CSS är vilken väljare som helst med vitt mellanrum mellan två väljare utan en kombinator. Här är några exempel:

ul li ( ) header h2 ( ) footer a ( ) .module div ( ) #info-toggle span ( ) div dl dt a ( )

Ta ul li ( )till exempel. Det betyder "alla listobjekt som härstammar från en oordnad lista."

Avstamning betyder var som helst kapslat i det i DOM-trädet. Kan vara ett direkt barn, kan vara fem nivåer djupt, det är fortfarande en ättling. Detta skiljer sig från en barnkombinator (>) som kräver att elementet ska vara nästa kapslade nivå ner.

För att illustrera, div span ( )matchar:

 I will match
  • I will match too

Du borde förmodligen inte oroa dig för det mycket, men den decedent väljaren är ganska "dyr" - vilket betyder svårt / långsamt för att rendera motorer att räkna ut och göra saker med. MDN:

Efterkommande väljare är den dyraste väljaren i CSS. Det är fruktansvärt dyrt - speciellt om väljaren är i taggen eller universalkategorin.

Men bara i jämförelse med andra väljare. Det är fortfarande flammande snabbt och du kommer nog aldrig att märka det om du inte blir galen.

Webbläsarstöd

Krom Safari Firefox Opera IE Android iOS
Några Några Några Några Några Några Några