A harmadik példád az egyszerű szelektorok láncolásáról szól a descendant combinator segítségével, ami olyan, mint a child combinator egy homályosabb és lassabb változata. Ha nem támogatod az IE6-ot, akkor inkább a gyermek kombinátort használd helyette.

Például #twitter p vs #twitter>p. A böngésző először összegyűjti az összes p elemet, majd egy szinttel feljebb megy, és ellenőrzi, hogy ez az elem megkapta-e a “twitter” azonosítót. Ha nem, akkor a böngésző itt megáll, ha a gyermek kombinátort használta. A descendant combinatorral egészen a gyökércsomópontig utazik (ha nem talál útközben néhány #twitter-et). Tehát a hamis pozitív eredmények mindig valamivel lassabbak a leszálló kombinátorral.

A nagyobb probléma a leszálló kombinátorral a homályossága, ami növeli az ütközések lehetőségét. Ennek mellékhatásaként a tetszőlegesen beágyazható struktúrák létrehozása sokkal trükkösebbé válik.

.container #twitter p is túlságosan specifikus. Tényleg azt akarjuk, hogy p elemei #twitter belsejében másképp nézzenek ki, ha #twitter nem .container belsejében van?

Egy másik probléma, hogy .container egy hely és nem a struktúra része. Tehát igen… ez a szabály nem újrafelhasználható.

Skálázható CSS = újrafelhasználható kód = osztályok. Az id-alapú szabályok definíció szerint nem újrafelhasználhatóak.

Leave a comment

Az e-mail-címet nem tesszük közzé.