Geen vraag
eerder een mogelijke discussie;
In CSS 1 en 2 heb je o.a. de descendant, child en (direct) adjacent sibling selectors, respectievelijk [spatie], > en +. In CSS3 (laatste versie alweer van 13 november 2001
stokoud) komt daar de indirect adjacent sibling bij, de tilde, ~. Die selecteert b.v. bij:
een p die (niet direct, maar ergens) na een h1 komt, mits ze in dezelfde parent zitten. Beetje wazig, maar verder vast wel handig. Maar, zou het ook niet handig zijn om b.v. iets als dit te hebben ("parent selector" oid):
Dus de child selector, maar dan omgekeerd. Dit zou dan LI's selecteren, maar alleen die waarin een UL direct genest is. En dan zou je b.v. als je een menu zou bouwen met css geen classes nodig hebben om LI's die wel submenu's bevatten te onderscheiden van LI's die dat niet hebben.
In diezelfde lijn zou ik deze ook wel handig vinden ("previous sibling selector" oid):
Wat een H1 zou selecteren, mits deze direct gevolgd wordt door een een PRE. Een echt nuttige toepassing hiervoor heb ik nog niet echt kunnen bedenken
maar ook hiermee zou je b.v in een list navigatie de A's kunnen selecteren in een LI die gevolgd worden door een UL, om b.v. wederom subnavigatie links te onderscheiden van gewone.
De + en > zijn heel leuk, maar ze selecteren altijd het element dat als laatste genoemd wordt, en dat wil je misschien juist niet altijd, vandaar dit idee. Als ik de specs goed lees is het namelijk ook niet mogelijk zonder deze fictieve selectors bij de elementen te komen die ze zouden selecteren. Je hebt b.v. wel de :contains pseudo-class, maar die slaat alleen op textuele content, en volgens mij kan je ook niet iets bouwen met de :not() pseudo.
Het is verder puur bedoeld als stof tot nadenken
aangezien CSS3 zelf nog niet echt in de praktijk grootschalig bruikbaar is. Het vreemde van deze selectors zou ook zijn dat je ze als uitzondering op de rest deels van rechts naar links zou moeten lezen, maar verder lijken ze mij eigenlijk best handig...
In CSS 1 en 2 heb je o.a. de descendant, child en (direct) adjacent sibling selectors, respectievelijk [spatie], > en +. In CSS3 (laatste versie alweer van 13 november 2001
Cascading Stylesheet:
1
2
3
| h1 ~ p { ... } |
een p die (niet direct, maar ergens) na een h1 komt, mits ze in dezelfde parent zitten. Beetje wazig, maar verder vast wel handig. Maar, zou het ook niet handig zijn om b.v. iets als dit te hebben ("parent selector" oid):
Cascading Stylesheet:
1
2
3
| ul < li { ... } |
Dus de child selector, maar dan omgekeerd. Dit zou dan LI's selecteren, maar alleen die waarin een UL direct genest is. En dan zou je b.v. als je een menu zou bouwen met css geen classes nodig hebben om LI's die wel submenu's bevatten te onderscheiden van LI's die dat niet hebben.
In diezelfde lijn zou ik deze ook wel handig vinden ("previous sibling selector" oid):
code:
1
2
3
| pre - h1 {
...
} |
Wat een H1 zou selecteren, mits deze direct gevolgd wordt door een een PRE. Een echt nuttige toepassing hiervoor heb ik nog niet echt kunnen bedenken
De + en > zijn heel leuk, maar ze selecteren altijd het element dat als laatste genoemd wordt, en dat wil je misschien juist niet altijd, vandaar dit idee. Als ik de specs goed lees is het namelijk ook niet mogelijk zonder deze fictieve selectors bij de elementen te komen die ze zouden selecteren. Je hebt b.v. wel de :contains pseudo-class, maar die slaat alleen op textuele content, en volgens mij kan je ook niet iets bouwen met de :not() pseudo.
Het is verder puur bedoeld als stof tot nadenken
Instagram | Flickr | "Let my music become battle cries" - Frédéric Chopin