wat is adjacent sibling selector?
Een ajedaket sibli selektar ?? WTF
Een moeilijke combinatie van woorden voor een héél simpele situatie. Het betreft een element dat onmiddelijk op een ander volgt en dezelfde parent ( ouder-element ) heeft. De manier om een adjacent sibling selector aan te geven in CSS is:
p + p {
font-size: smaller;
}
Let op de spatie tussen de elementen en het plusteken (+), je kan het met of zonder spatie doen, het werkt op alle 2 manieren
In voorgaand voorbeeld zal enkel een tekst die in een <p> zit en die direct volgt op een <p> kleiner worden.
Voorbeeld HTML
<div>
<p>deze tekst zal normaal zijn</p>
<p>Deze tekst zal kleiner zijn</p>
</div>
Voordelen van deze situatie
Je HTML kan minder class en/of id bevatten = minder kB = minder download = minder bandbreedte.
Minder class en/of id ?
Stel je hebt na een <h1> een <h2> en je wilt nu telkens als deze 2 op elkaar volgen een andere style als dan dat de <h2> alleen zou zijn.
Nu kan je een class en/of id aan de <h2> toevoegen of gewoon gebruik maken van de adjacent sibling selector situatie.
Update: zat eventjes in de war, is aangepast, dank Arjan
Gelezen: 1270 | XHTML, CSS, Tutorials







Op Wednesday 11 July 2007
Bedankt voor de tip Mark. Ik was deze manier van “elementen” aanspreken al even vergeten. Welke browsers ondersteunen deze manier van aanspreken?
IE6,IE7,… ?
Op Wednesday 11 July 2007
Volgens mij klopt dit niet helemaal.
Als je de selector
div + pgebruikt, zal in het volgende codevoorbeeld alleen het eerstep-element geselecteerd worden:<div></div><p></p><p></p>Als je de selector
p + pgebruikt op het bovenstaande voorbeeld, dan zal alleen het tweedep-element geselecteerd worden.Als je de selector
div + p + pgebruikt op het bovenstaande voorbeeld, dan zal ook alleen het tweedep-element geselecteerd worden.Bij het codevoorbeeld (de HTML) dat jij geeft, zal helemaal niets geselecteerd worden. Mocht je toch alleen het eerste
p-element willen selecteren, gebruik dandiv :first-childals selector. Die werkt echter nog lang niet in alle browsers… Let op de spatie tussen dediven:last-child.Op Wednesday 11 July 2007
Alles behalve IE6, but who cares ?
@Arjan: is aangepast, was eventjes in de war
Op Wednesday 11 July 2007
Our clients care
Op Wednesday 11 July 2007
@ Mark: dat zien we graag! (Niet dat jij in de war bent, maar dat je het snel aanpast ;))
Op Wednesday 11 July 2007
yep
Op Wednesday 11 July 2007
IE 5/6 ondersteunen ze in het geheel niet.