[CSS] Classes includen vanuit andere class

Pagina: 1
Acties:

  • Tubby
  • Registratie: Juni 2001
  • Laatst online: 19-04 17:11

Tubby

or not to be

Topicstarter
Ik was aan het opzoeken hoe je meerdere classes aan 1 html element kan toekennen en toen kwam ik langs het volgende (interessante) stukje css.
http://weblogs.asp.net/asmith/archive/2004/02/02/66360.aspx
Cascading Stylesheet:
1
2
3
4
5
6
7
8
9
10
.foo 
{ 
include: .bar; 
border: 1px solid black; 
} 
.bar 
{ 
background: red; 
color: green; 
} 

let op de include

HTML:
1
<div class=foo>test</div>

dit zou dus volgens het voorbeeld een blok met rode achtergrond moeten geven. (class foo include ook alle properties van bar)

Ik heb het nu al in verschillende testcasejes werkend proberen te krijgen, maar hij werkt niet zoals ze daar zeggen dat ie zou moeten werken. Het gekke is dat ik hiervan ook niets kan terug vinden in de css of css2 reference van w3. Ook hier op GoT kan ik niets vinden hierover.

is dit voorbeeld nou complete bs of zie ik iets over het hoofd? :/ want het principe zou best ideaal zijn :Y)

[ Voor 3% gewijzigd door Tubby op 05-01-2006 16:48 ]

tubby.nl - Artes Moriendi - q1 - bf1942 - WoT - pubg - LinkedIN


Verwijderd

Misschien eerst bar definieren? D.w.z. de volgorde omdraaien?

  • Tubby
  • Registratie: Juni 2001
  • Laatst online: 19-04 17:11

Tubby

or not to be

Topicstarter
Verwijderd schreef op donderdag 05 januari 2006 @ 16:49:
Misschien eerst bar definieren? D.w.z. de volgorde omdraaien?
tried that
ben bang dat het gewoon bs is aangezien ik er niets van op w3 kan terug vinden :|

[ Voor 18% gewijzigd door Tubby op 05-01-2006 16:50 ]

tubby.nl - Artes Moriendi - q1 - bf1942 - WoT - pubg - LinkedIN


  • Sappie
  • Registratie: September 2000
  • Laatst online: 15:28

Sappie

De Parasitaire Capaciteit!

Je hebt denk ik niet helemaal goed gelezen op die site :)

De gozer die die CSS post vraagt zich namelijk af of dit zou werken en dit is inderdaad niet het geval:
I knew you could do that, what I wanna know is how you can nest a reference to one class inside another.
code:
1
2
3
4
5
6
7
8
9
10
11
.foo
{
include: .bar;
border: 1px solid black;
}
.bar
{
background: red;
color: green;
}
class=&#8221;foo&#8221; (includes bar)
Meerdere classen aan een element koppelen doe je zoals ook op die pagina beschreven staat, namelijk door gewoon de twee classen allebei in het class attribuut te vernoemen :)

bovendien, mocht die methode wel werken, dan zouden ze bij W3c ook niet helemaal helder zijn geweest. Dit kan namelijk eenvoudiger..
code:
1
2
3
4
5
6
7
8
.foo { 
  border: 1px solid black; 
} 

.bar, .foo { 
  background: red; 
  color: green; 
}

[ Voor 25% gewijzigd door Sappie op 05-01-2006 16:58 ]

Specs | Audioscrobbler


  • Tubby
  • Registratie: Juni 2001
  • Laatst online: 19-04 17:11

Tubby

or not to be

Topicstarter
Sappie schreef op donderdag 05 januari 2006 @ 16:54:
Je hebt denk ik niet helemaal goed gelezen op die site :)

De gozer die die CSS post vraagt zich namelijk af of dit zou werken en dit is inderdaad niet het geval:

[...]

Meerdere classen aan een element koppelen doe je zoals ook op die pagina beschreven staat, namelijk door gewoon de twee classen allebei in het class attribuut te vernoemen :)

bovendien, mocht die methode wel werken, dan zouden ze bij W3c ook niet helemaal helder zijn geweest. Dit kan namelijk eenvoudiger..
jah, zoals:
HTML:
1
<div class=foo bar>test</div>

magoed, wel jammer, was ook te mooi om waar te zijn :+

tubby.nl - Artes Moriendi - q1 - bf1942 - WoT - pubg - LinkedIN


  • Sappie
  • Registratie: September 2000
  • Laatst online: 15:28

Sappie

De Parasitaire Capaciteit!

Tubby schreef op donderdag 05 januari 2006 @ 17:02:
[...]

jah, zoals:
HTML:
1
<div class=foo bar>test</div>

magoed, wel jammer, was ook te mooi om waar te zijn :+
Wel even quotes eromheen dan he :) maar eh, het zou zoals ik in mijn post ook al stelde, behoorlijk nutteloos zijn :)

Specs | Audioscrobbler


  • Tubby
  • Registratie: Juni 2001
  • Laatst online: 19-04 17:11

Tubby

or not to be

Topicstarter
Sappie schreef op donderdag 05 januari 2006 @ 17:03:
[...]

Wel even quotes eromheen dan he :) maar eh, het zou zoals ik in mijn post ook al stelde, behoorlijk nutteloos zijn :)
mja, quotes komen er niet zo mooi uit in dat blokje maar je hebt gelijk :P

maar nutteloos is het niet had het vanmiddag namelijk nodig :)

tubby.nl - Artes Moriendi - q1 - bf1942 - WoT - pubg - LinkedIN


  • Sappie
  • Registratie: September 2000
  • Laatst online: 15:28

Sappie

De Parasitaire Capaciteit!

Leg het nut er eens van uit dan? Wat zou het voordeel zijn wanneer een soortgelijke constructie mogelijk zou zijn.

Specs | Audioscrobbler


  • Tubby
  • Registratie: Juni 2001
  • Laatst online: 19-04 17:11

Tubby

or not to be

Topicstarter
Sappie schreef op donderdag 05 januari 2006 @ 17:15:
Leg het nut er eens van uit dan? Wat zou het voordeel zijn wanneer een soortgelijke constructie mogelijk zou zijn.
Een grid waarbij de textkleur van de rijen veranderd aan de hand van de status van die rij.
En die kleuren zijn vervolgens applicatie instellingen.

Bovenin je page genereer je classes op basis van je applicatie kleur instellingen voor de statussen, en je hebt een class in je stylesheet waarin je het standaard font/padding van het grid gedefineerd.

Per row in het grid heb je vervolgens een standaard class + de class van de status kleur.

Ik hoop dat het een beetje begrijpelijk is, anders moet ik wat code plakken

tubby.nl - Artes Moriendi - q1 - bf1942 - WoT - pubg - LinkedIN


  • UltimateB
  • Registratie: April 2003
  • Niet online

UltimateB

Pomdiedom

Mja, maar dus ook makkelijk te doen door een soort van parent classe die de generieke instellingen voor beide classes heeft, en dan de extra kleuren in die children aangeven. Niet eens meer tikwerk of code dan.

"True skill is when luck becomes a habit"
SWIS


  • Sappie
  • Registratie: September 2000
  • Laatst online: 15:28

Sappie

De Parasitaire Capaciteit!

Misschien zou je wat code moeten plakken ;) Ik zie namelijk niet in waarom je dit niet op kan lossen met meerdere classes in een class attribuut.

[ Voor 55% gewijzigd door Sappie op 05-01-2006 17:53 ]

Specs | Audioscrobbler


  • JHS
  • Registratie: Augustus 2003
  • Laatst online: 04-01 15:49

JHS

Splitting the thaum.

UltimateB:

HTML:
1
2
3
4
5
6
<p>Beetje tekst.</p>
<p class="manual">Handleiding tekst</p>
<p class="ietsanders">Aangezien er een totaal andere class tussen zit,
  kan je het niet met een div oplossen.</p>
<p class="manual important">Hele belangrijke handleiding tekst</p>
<p class="important">Gewone belangrijke tekst</p>

Cascading Stylesheet:
1
2
3
4
5
6
7
8
9
10
11
12
p.manual {
  background-color: grey;
}

p.important {
  color: red;
}

p.ietsanders {
  background-color: lime; 
  color: purple;
}


En hoe wilde je dit doen, zonder code te pasten, en zonder meerdere classes aan één element te hangen :) ?

[ Voor 27% gewijzigd door JHS op 05-01-2006 17:46 ]

DM!


  • UltimateB
  • Registratie: April 2003
  • Niet online

UltimateB

Pomdiedom

Kan .ietsanders ook .important zijn?

"True skill is when luck becomes a habit"
SWIS


  • wizzkizz
  • Registratie: April 2003
  • Laatst online: 19-12-2025

wizzkizz

smile...tomorrow will be worse

JHS schreef op donderdag 05 januari 2006 @ 17:45:
UltimateB:

HTML:
1
2
3
4
5
6
<p>Beetje tekst.</p>
<p class="manual">Handleiding tekst</p>
<p class="ietsanders">Aangezien er een totaal andere class tussen zit,
  kan je het niet met een div oplossen.</p>
<p class="manual important">Hele belangrijke handleiding tekst</p>
<p class="important">Gewone belangrijke tekst</p>

Cascading Stylesheet:
1
2
3
4
5
6
7
8
9
10
11
12
p.manual {
  background-color: grey;
}

p.important {
  color: red;
}

p.ietsanders {
  background-color: lime; 
  color: purple;
}


En hoe wilde je dit doen, zonder code te pasten, en zonder meerdere classes aan één element te hangen :) ?
zo :?
Cascading Stylesheet:
1
2
3
4
5
6
7
8
9
10
11
12
p.manual, p.important_manual {
  background-color: grey;
}

p.important, p.important_manual  {
  color: red;
}

p.ietsanders {
  background-color: lime; 
  color: purple;
}


en je important manal-paragraaf de class important_manual geven?

Make it idiot proof and someone will make a better idiot.
Real programmers don't document. If it was hard to write, it should be hard to understand.


  • Tubby
  • Registratie: Juni 2001
  • Laatst online: 19-04 17:11

Tubby

or not to be

Topicstarter
Deze css class is altijd hetzelfde en zal dus in een style sheet zitten.
Cascading Stylesheet:
1
2
3
4
5
.Grid 
{
  font-size:10px;
  padding-left:2px;
}


Deze css classes zijn gebaseerd op waarden die in de applicatie ingesteld kan worden (systeem beheerder kan kleurtjes kiezen voor bepaalde statussen). De applicatie genereerd op basis van die instellingen een style tag in de header van de pagina met globaal de volgende class definities
Cascading Stylesheet:
1
2
3
4
5
6
7
8
.red
{
 color: rgb(255,0,0);
}
.blue
{
 color: rgb(0,0,255);
}


Vervolgens wordt er bij het genereren van de tabel per row gekeken wat de status van die row is. Aan de hand daarvan wordt er vervolgens de class red of blue gekozen. Maar je wil ook altijd de grid class van de td erbij hebben.
HTML:
1
2
3
4
5
6
7
8
<table>
<tr>
<td class=grid red>rij1 status rood</td>
</tr>
<tr>
<td class=grid blue>rij2 status blauw</td>
</tr>
</table>

[ Voor 7% gewijzigd door Tubby op 05-01-2006 19:58 ]

tubby.nl - Artes Moriendi - q1 - bf1942 - WoT - pubg - LinkedIN


  • JHS
  • Registratie: Augustus 2003
  • Laatst online: 04-01 15:49

JHS

Splitting the thaum.

UltimateB: Ja, natuurlijk, net als .nogietsanders

wizzkizz: Vanwege bovenstaande moet je dan voor álles waar je important bij wil gebruiken .classname-important toe gaan voegen aan je CSS, én class="classname-important". In plaats van alleen class="classname important" in je HTML :) .

DM!


  • UltimateB
  • Registratie: April 2003
  • Niet online

UltimateB

Pomdiedom

How about:

een <span class="important"> oid erbij als het belangrijk is?

"True skill is when luck becomes a habit"
SWIS


  • JHS
  • Registratie: Augustus 2003
  • Laatst online: 04-01 15:49

JHS

Splitting the thaum.

UltimateB: Dan is een extra class toch véél makkelijker :? . Waarom zou je semantiekloze elementen willen toevoegen, terwijl dit een véél betere oplossing is :? . Ook met die span heb je veel meer typewerk. Het ging er alleen maar om om aan te tonen dat het nuttig is. Nu kan je het vast ook op andere manieren realiseren, maar dit is gewoon veel makkelijker, en DOMtechnisch ook beter. Bovendien, stel dat ik het een blocklevel element wil laten zijn...

[ Voor 33% gewijzigd door JHS op 05-01-2006 21:17 ]

DM!


  • wizzkizz
  • Registratie: April 2003
  • Laatst online: 19-12-2025

wizzkizz

smile...tomorrow will be worse

JHS schreef op donderdag 05 januari 2006 @ 21:16:
UltimateB: Dan is een extra class toch véél makkelijker :? . Waarom zou je semantiekloze elementen willen toevoegen, terwijl dit een véél betere oplossing is :? . Ook met die span heb je veel meer typewerk. Het ging er alleen maar om om aan te tonen dat het nuttig is. Nu kan je het vast ook op andere manieren realiseren, maar dit is gewoon veel makkelijker, en DOMtechnisch ook beter. Bovendien, stel dat ik het een blocklevel element wil laten zijn...
het kan wel anders :P , maar met een extra class is idd een stuk makkelijker

Make it idiot proof and someone will make a better idiot.
Real programmers don't document. If it was hard to write, it should be hard to understand.


  • Tubby
  • Registratie: Juni 2001
  • Laatst online: 19-04 17:11

Tubby

or not to be

Topicstarter
UltimateB schreef op donderdag 05 januari 2006 @ 20:59:
How about:

een <span class="important"> oid erbij als het belangrijk is?
Dat was mijn vorige oplossing, maar deze vind ik overzichtelijker.

tubby.nl - Artes Moriendi - q1 - bf1942 - WoT - pubg - LinkedIN


  • Sappie
  • Registratie: September 2000
  • Laatst online: 15:28

Sappie

De Parasitaire Capaciteit!

Volgens mij hebben we elkaar in 2e instantie een beetje verkeerd begrepen :) want ik bedoelde wat jij in je vorige post heb gepost :)

Specs | Audioscrobbler

Pagina: 1