Class of Id, wat een dilemma
Het één of het ander
Naar aanleiding van een comment van Protestboarder wanneer het nu aangeraden is om een class of id te gebruiken:
Keuze tussen class of id voor dummy’s
Het verschil zit hem erin dat een id uniek is op één webdocument, terwijl een class, laten we zeggen anti-uniek, is.
Voor diegenen die niet weten waarover het hier gaat:
Een id of een class is een aanduiding, benaming die je geeft aan een webdocument-element, zoals daar zijn om maar enkele op te noemen:
<p><div><form><ul>- etc …
Dus geef je bijvoorbeeld aan een <ul> die de navigatie maakt een id: <ul id="navigatie">
Terwijl je dezelfde navigatie aan class aanduiding geeft met: <ul class="navigatie">
Opgelet:
Zelfs al gebruik je een id meerder malen in je document, zal je website functioneren, maar ze zal niet valid zijn.
Een id gebruiken
Je gebruikt een id als je een bepaald onderdeel van je layout wilt benamen waarvan je weet dat deze éénmaal in je document zal voorkomen, zoals je navigatie, je header, je inhoud, je footer, je Google-adsense, etc …
Een id wordt op deze manier aan je document toegevoegd:
<ul id="navigatie"><div id="footer"><p id="extra_info">
En in je CSS bestand zal de aanduiding erzo uitzien:
#navigatie { margin-left: 45px; }#footer { padding-right: 45px; }#extra_info { text-decoration: underline; }
Een class gebruiken
Je gebruikt een class voor elementen die je meerde malen zal hebben in je document zoals foutmeldingen, belangrijke punten, titels, navigatie-onderdelen, etc…
Een class voeg je op volgende manier toe aan je document:
<a href="#" class="link"><div class="artikel"><p class="belangrijk">
En in je CSS zal een aanroep naar deze elementen er zo uitzien:
.link { color: #996; }.artikel { margin-right: 4px; }.belangrijk { text-decoration: underline; font-weight: bold; }
Het fijne aan een class is dat je meerdere class kunt bepalen voor één element:
<a href="#" class="link belangrijk">
Waarbij wel een spatie tussen de naamgeving moet staan.
Semantiek bij naamkeuze
Wat is semantiek ?
Nu, stel het zo: Je hebt een tekst die een fout weer moet geven, dus deze zal over het algemeen rood zijn, en je geeft je class de naam rood. Nu, dat is goed en wel, voor dit moment, stel je hebt nu een hele andere opzet en wilt opeens dat alle foutmeldingen oranje zijn, dan is de gekozen naam niet meer zo doeltreffend hé ?
Dus is het beter zijn de benaming te kiezen naargelang het doel van de class of id.
Gelezen: 2063 | XHTML, CSS, Tutorials







Op Thursday 07 September 2006
Indien je een aantal divisions gebruikt in je code (<div>) kan je het gebruik van classes tot een minimum beperken door selectors te combineren. Vb. #divId p {} ipv p.classVoorDezeDiv. Om Andy Budd te citeren (vertaald): "Als je veel classes aan het gebruiken bent is dat waarschijnlijk een teken dat je (X)HTML document slecht gestructureerd is."
Op Thursday 07 September 2006
Id’s zijn beter te benaderen via JavaScript.
Tag is het type object, Id is de naam, Class de manier waarop gegevens zijn opgeslagen of getoont dient te worden (opmaak).
Op Thursday 07 September 2006
Danku voor deze Tut!
Ik heb inmiddels de ID die dubbel gebruikt werd veranderd naar een class.
Maar hoe bekijk je of alles valid is? Hiervoor zou je toch alle links (je hele sitemap) in de validator moeten stoppen?
Als ik mijn pagina valideer is dat meestal alleen de index.
Maakt het dus bijvoorbeeld ook uit, dat die Dubbele ID die ik gebruikte dan in 2 verschillende pagina’s werd gebruikt?
Is het dan weer wel mogelijk?
In ieder geval heel erg bedankt
is een stuk overzichtelijker zo voor mij.
mvg Protestboarder
Op Friday 08 September 2006
@Protestboarder: de “id” is uniek op 1 pagina, en mag op een andere pagina dus ook (eenmaal!) voorkomen.
Het validaten kan je op deze website, maar dit gebeurt (spijtig genoeg) per pagina.
Op Friday 08 September 2006
@ Ben van Aerde,
Bedankt. Ja van die website wist ik het
en daar check ik ook altijd. Maar dus niet alle individuele pagina’s(meeste wel)
Op Friday 08 September 2006
Een erg handige plugin voor Firefox is deze.
Hiermee hoef je enkel nog een blik op je statusbalk te werpen om te zien of je document valid is.
Op Friday 08 September 2006
op deze site kun je wel je complete site in een keer checken op validatie: 360webdesign.co.uk
Op Sunday 10 September 2006
@Harmen Janssen,
Hartelijk dank voor de plugin, deze is echt heel erg handig
Dan gelijk een vraag over de warning die iedere site zo ongeveer heeft die javascript gebruikt. Er staat dan niet type = text/javascript in je bron. terwijl ik niet weet hoe je dat dan goed krijgt.
Is dat gewoon niet mogelijk als je javascript gebruikt(google ads en dergelijke) om die warnings te laten verdwijnen?
Maar echt een handige plugin
bedankt
mvg Jeroen
Op Monday 11 September 2006
@Jeroen: graag gedaan, het helpt mij ook nog altijd dagelijks
Wat betreft die Javascript error: als je Javascript op je site gebruikt, dien je dit in -tags te zetten. Deze -tags hebben dan vervolgens het attribute “type” nodig met een waarde van “text/javascript” (in tegenstelling tot het attribute “language”, dat weggelaten dient te worden). De uiteindelijke code wordt dan:
/* javascript code hier */
Op Monday 11 September 2006
Oeps, mijn tags zijn uit het comment gestript. Had ik kunnen weten, pardon!
Nogmaals, de uiteindelijke code wordt dan:
<script type=”text/javascript”> /* javascript code hier */ </script>
Op Tuesday 12 September 2006
lees eens (als je het nog niet gedaan hebt) het interessante artikel op naarvoren over Class.
hierzo
Op Monday 25 September 2006
In mijn ogen is een class hoofdzakelijk voor style en een id soms voor een hoofdelement, maar hoofdzakelijk voor het gebruik in javascript.