Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; breadcrumb has a deprecated constructor in /kunden/dciwam.de/webseiten/dciwam/includes/class.breadcrumb.inc.php on line 23
Klassennamen und id
-Bezeichner
Worauf sollte man bei der Wahl der Klassennamen und id
-Bezeichnern
achten? Worauf kommt es an?
Diese Frage beantwortet sich beinahe von alleine, wenn einem bewußt ist, was man mit der korrekten Anwendung dieser Attribute erreichen kann:
Klassennamen und id
-Bezeichner versetzen den Webautor in die Lage, ein eigenes
semantisches System (Semantic Web System) zu schaffen.
Mit anderen Worten class
- und id
-Attribute stellen Werkzeuge
zu Anreicherung des Codes mit Bedeutungen zur Verfügung, die nicht in der HTML-Spezifikation
definiert sind. Semantik (Merkmalssemantik, die Bedeutungsebene, die Bedeutungslehre) entsteht
genau dort, wo eine Bedeutung zugeordnet wird.
HTML ordnet dem h1
-Element die Bedeutung "Überschrift erster Ordnung" zu.
Man kann ein HTML-Dokument über die durch die HTML-Spezifikation festgelegte Ontologie
hinaus mit Semantik anreichern, dazu dienen unter anderem die Attribute id
und class
.
Es reicht, wenn man diesen Namen oder Bezeichnern selbst Bedeutungen zuweist - es bedarf nicht einer formellen Spezifikation, die das für alle Dokumente festlegt. Man schafft sich dadurch sein eigenes semantisches System.
Unter Beachtung dieser Vorbemerkung sollte man bei der Wahl der Klassennamen und ID-Bezeichner folgende Regeln beachten:
- Klassennamen und ID-Bezeichner sollten die Bedeutung oder Struktur und Logik des Elements
im HTML beschreiben.
<p id="vorwort"> <ul id="zutaten"> <p class="anmerkung">
-
Klassennamen und ID-Bezeichner sollten unabhängig vom dahinterliegenden CSS sein, denn dieser kann sich ändern.
Schlecht:
<p class="blau"> .blau: {color: blue}
Ganz schlecht:
<p class="blau"> .blau: {color: red}
-
Klassennamen und
id
s sollten sich deutlich von vorhandenen Schlüsselwörtern unterscheiden und auch keine enthalten.Schlecht:
<p class="body"> <p class="p1">
Beachte:
Die Attribute class
und id
dürfen nur mit einem Buchstaben
([A-Za-z]) oder Zeichen nach ISO 10646 beginnen, nicht aber mit Zahlen oder Sonderzeichen
wie Bindestrich.
Links
- Typische Fehler bei der Erstellung von Style Sheets:
http://www.bjoernsworld.de/css/typische-fehler.html - CSS2 syntax and basic data types:
http://www.w3.org/TR/REC-CSS2/syndata.html#q4
Begriffserklärungen
- Semiotik
- Zeichenlehre
- Semantik
- Bedeutungslehre
- semeion
- griechisch: Zeichen
Semantik fragt nach der Bedeutung sprachlicher Zeichen, und zwar semasiologisch, d.h. vom Wort ausgehend, nicht von der Sache, onomasiologisch (onoma = Name).
Semantik kann sowohl die Wissenschaft als auch die Bedeutung eines Wortes meinen.
(Quelle: Uni Köln)
Ontologie ist die Wissenschaft, die Theorie oder die Untersuchung des Seins, bzw. die Erforschung dessen, 'was ist', 'wie es ist' usw. Ontologie erklärt die Beschaffenheit der Welt; Epistemologie erklärt die Beschaffenheit unserer Erfahrung von dieser Welt.
Fußnote
In diesen Tagen hört man viel vom Semantic Web. Das Semantic Web ist eine Vision von Tim Berners-Lee, Erfinder des WWW, in dem alle Webressourcen mit semantischen Metadaten versehen sind. Die dahinterliegende Idee ist, einen Mechanismus zur Verfügung zu stellen, so dass Daten im Web durch maschinelle Akteure erarbeitet und interpretiert werden können.
Mehr dazu findet man unter anderem hier:
- http://www.ursodermatt.ch/odermatt/media/pdf/SemanticWeb.pdf
- http://dublincore.org/workshops/dc9/Dekkers_SW_WS_2001-10-23_files/slide0036.htm
Jedoch scheint HTML für Semantic Markup ungeeignet zu sein, da die Möglichkeiten irgendwelche Metainformation in den HTML-Dokumenten zu speichern sehr eingeschränkt sind. Eine strikte Trennung findet lediglich zwischen dem eigentlichen Dokument und seiner visuellen Darstellung statt und dies könnte in einer Semantic Web-Umgebung wichtig werden. Ebenso könnten Informationen, die in den Meta-Tags sowie Alt- und Title-Attributen gespeichert sind, helfen maschinenverständliche Information zu liefern.
In diesem Zusammenhang könnten sogar passende Klassennamen und IDs helfen das Semantic Web besser aufzubauen usw.
Huschiar Madjidi · http://www.netandmore.de