Hier op stage hebben we een probleem met eerst een td element een standaard kleur mee te geven, en vervolgens de kleur van td's in een tabel met een specifieke class te wijzigen.
We hebben de volgende opzet (abstract):
Vervolgens de css:
Het probleem is nu dat de td in de table met class 'list' niet groen wordt, maar gewoon de zwarte kleur pakt. Pas wanneer we de class aanspreken met
wordt de kleur goed overgenomen. Dit is echt vrij beperkend, terwijl we juist een zo breed mogelijk bruikbare stylesheet willen. Waarom krijgt de .list td niet gewoon de groene kleur, zoals je zou verwachten met deze volgorde?
Test url
We hebben de volgende opzet (abstract):
HTML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
| <table class="window"> <tr> <td> <table> <td>Deze heeft de standaard definitie</td> </table> </td> </tr> </table> <table class="window"> <tr> <td> <table class="bla"> <td>Deze moet overschreven worden</td> </table> </td> </tr> </table> |
Vervolgens de css:
Cascading Stylesheet:
1
2
3
4
5
6
7
8
| table.window table td { color : black; } .list td { color : green; } |
Het probleem is nu dat de td in de table met class 'list' niet groen wordt, maar gewoon de zwarte kleur pakt. Pas wanneer we de class aanspreken met
Cascading Stylesheet:
1
| table.window .list td |
wordt de kleur goed overgenomen. Dit is echt vrij beperkend, terwijl we juist een zo breed mogelijk bruikbare stylesheet willen. Waarom krijgt de .list td niet gewoon de groene kleur, zoals je zou verwachten met deze volgorde?
Test url
offtopic:
(Ik hoop dat het verkeerd gebruik van tabellen dit keer niet ter sprake hoeft te komen, ik weet dat het beter (semantisch correct) kan, de ontwerper weet dat het beter kan, maar onze werkgever wil dat deze techniek voorlopig nog wordt gebruikt omdat hij niet vertrouwd dat wij anders een betrouwbare consistente layout kunnen leveren in de korte tijd die we hebben, dit is alles wat ik erover wens te bespreken).
(Ik hoop dat het verkeerd gebruik van tabellen dit keer niet ter sprake hoeft te komen, ik weet dat het beter (semantisch correct) kan, de ontwerper weet dat het beter kan, maar onze werkgever wil dat deze techniek voorlopig nog wordt gebruikt omdat hij niet vertrouwd dat wij anders een betrouwbare consistente layout kunnen leveren in de korte tijd die we hebben, dit is alles wat ik erover wens te bespreken).