CSS & Semantik

Eigentlich war ein anderer Artikel geplant, jedoch beschäftigt mich die Frage seit ein paar Tagen: Muss man auch bei Stylesheets die Semantik beachten? Ich habe mir dazu zwei Beispiele überlegt und bin auf eure Meinungen gespannt.

Künstliche Abstände

Es ist bekannt, das Spacer-GIFs keine Lösung für Abstände sind. Was ist mit künstlichen Abständen mit der CSS-Eigenschaft border? Es ist zwar unwahrscheinlich, Ränder als Abstände zu verwenden; die Frage ist aber schon interessant.

Künstliche Aufzählungs-Punkte in Listen

Ich selber nutze eine alternative Grafik für die Aufzählungs-Punkte meiner Listen - eingefügt als background-image - und bin da nicht der einzige. Jedoch gibt es ja list-style-image. Ist das also falsch?

veröffentlicht am 02.01.2006 um 23:00 von Martin Labuschin in


Semantik ( http://de.wikipedia.org/wiki/Semantik ) und CSS? Klingt lustig.

Ich bin der Meinung, dass es völlig egal ist, welche CSS-Eigenschaften man nutzt, um das gewollte Erscheinungsbild zu erhalten. Natürlich muss man darauf achten, dass man durch seltsame Verwendung keine Nachteile entstehen lässt. Zum Beispiel ist die Verwendung von margin oft sinnvoller als von border oder padding, da man dann nicht so viele Probleme mit dem IE5-Boxmodell hat.


list-style-images kann man längst nicht so schön positionieren wie background-images. Ich habe schon ewig keine list-style-images mehr verwendet.

Etwas wie Semantik im CSS gibt es in meinen Augen nicht. Was rauskommt, zählt.

Ich schließe mich da Markus an. Die Semantik findet im HTML statt.

bei den list-style-images ist es ok, da man das background-image viel besser verwenden kann.
aber einen abstand mit border? also das muss ja nicht sein, denn die alternativen sind vorhanden und lassen sich gut handhaben.
die semantik in stylesheets gibt es nicht wirklich, da sie für die zugänglichkeit eher nicht relevant ist. aber man sollte trotzdem - ausser wenn es sich nicht vermeiden lässt - die eigenschaften benutzen, die dafür gedacht sind.

@Markus: Das mag ja komisch klingen. Doch warum heißt denn border so, wie das Ergebnis was bei der Verwendung herauskommt?

Die Semantik kümmert sich um die Frage, wie Sinn und Bedeutung von komplexen Begriffen aus denen von einfachen Begriffen abgeleitet werden können und stützt sich dabei in der Regel auf die Syntax.Die Erfinder von CSS werden sich bei der Arbeit schon was gedacht haben, oder nicht?

Was ist an 'border' so schlimm, es macht doch einen Rahmen. Paßt doch ganz gut zur Bezeichnung:)

Es wird nicht klar worauf Du hinaus möchtest.

Der semantische Mehrwert eines Dokuments ergibt sich aus der Verwendung adäquater Elemente im HTML Code.
Stichwort Trennung von Inhalt und Layout.

Der Gebrauch passender CSS Attribute ergibt sich deren Verhalten und leider auch der Interpretation verschiedener Engines.

netter Startpunkt: http://www.w3.org/WAI/

Es kann darüber nicht mal die Rede sein solange wir Floats für Layout benutzen...

Ich bin jetzt nur durch Zufall hierauf gestossen - und weil es unter http://www.mediengestalter.info/forum/4/css-div-zentrieren-49645-1.html gerade diskutiert wurde.

Meiner Meinung nach gibt es schon eine "semantische" - also im Sinne der Bedeutung einer Notierung - Komponente bei CSS.

Kurz und Gut: "semantisches (X)HTML" weicht von meinem Begriff eines "semantischen CSS" sehr weit ab.


Dennoch: Wird unter CSS die Notation

body {text-align: center;}
body div {width: 770px; margin: 0 auto;}

benutzt, so werden alle Inline-Elemente und deren Content innerhalb des body-Elements zentriert angezeigt, und alle div-(Block-)Elemente werden mit fester Breite und ebenso zentriert dargestellt. Jedoch leider auch deren Content.

Internet-Explorer (Windows) der Versionen 5 interpretieren jedoch selbst für Block-Elemente lediglich ein "body {text-align: center;}" um die nachfolgenden div-Elemente zentriert anzuzeigen - was jedoch nicht im Sinne des Erfinders sein kann.

Das kommt mir eher als ein semantisches Problem vor: Zeichne ich im Stylesheet ein body-element mit zentrierten Inhalten aus, dann will ich diese "Bedeutung" auf die Formatierung des (X)HTML-Dokuments übertragen.


Wenn ich aufgrund von Browser-Inkompabilitäten dazu gewzungen werde, alle Inline-Elemente des body-elements zu zentrieren, damit mir auch Blockelemente zentriert dargestellt werden, kann IMHO bereits eine semantische Unkorrektheit unterstellt werden, da der Aussenabstand für Blockelemente zunächst einmal nichts mit der Zentrierung von Inline-Elementen zu tun hat.

Letztendlich ist eine besondere Semantik in CSS jedoch wahrscheinlich eher von sekundärer Bedeutung, da ein Betrachter auch von einer "bedeutungsvollen" Formatierung nichts mitbekommt, ausser der Formatierung an sich.

blog comments powered by Disqus
The Ruby on Rails Link Library Spanning Sync SEO-Dokumentation Gowalla
ProWebApps WellDone (β) Pinboard (α) Netzwerk Münsterland
Blogs Bücher Frameworks iPhone Mac Web-Apps