Tutorial zu Cascading StyleSheets Cascading StyleSheets (CSS, "kaskadierende Formatvorlagen") gibt es schon seit 1996. Dennoch können erst die Browser ab Version 4 diese Formatvorlagen weitgehend korrekt interpretieren. Es gibt jedoch noch Unterschiede zwischen den Darstellungen der einzelnen Browser. Mit CSS können Sie die Darstellung der HTML-Elemente steuern. D.h., Sie können in den CSS-Angaben festlegen, wie bestimmte Bereiche des darzustellenden HTML-Dokuments aussehen sollen. Z.B. können Sie...
Einsatz der Style-Sheets in Webseiten Die Definition der CSS-Angaben wird innerhalb des "head"-Tags vorgenommen. Es gibt 2 Möglichkeiten:
Mit Hilfe der folgenden Beispiele sehen Sie die Einsatzmöglichkeiten von Cascasding StyleSheets. Auch wenn alle Beispiele getestet wurden, kann es zu unerwarteten Effekten bei individuellen Browsern und Plattformen kommen. Inhalt: Beispiel 1. Formatierung der Schrift in <style>Tags: <html>
<head> <style type="text/css"> <!-- p { font-family:arial; font-size:smaller; font-style:italic; font-weight:light; color:red; } //--> </style> </head> <body> <div> Dieser Text steht in einem <tt>div</tt>-Element. </div> <p> Dieser Text steht in einem <tt>p</tt>-Element. </p> </body> </html> Und so sieht's im Browser aus... Erklärung des Codes:Mit <style type="text/css"> wird die CSS-Definition eingeleitet. Wie bei JavaScript weist diese Angabe den Browser auf die nachfolgenden Style-Sheets hin. Ohne diese Angabe kann der Browser die entsprechende HTML-Seite nicht korrekt darstellen. Übrigens: Die Formatvorlagen werden als Kommentar in das HTML-Dokument eingebunden, damit, falls der Browser eine CSS-Spezifikation nicht kennt, er diese nicht als darzustellenden Text ansieht. Der Buchstabe p bezeichnet das HTML-Element, für das die in geschweiften Klammern folgende Definition gelten soll. Hier bedeutet das also, dass nur das Element "p" Formatvorlagen bekommt. Grundsätzlich können für alle HTML-Elemente StyleSheets definiert werden, wenn sie im Browserfenster dargestellt werden können.Mit einer geschweiften Klammer wird die CSS-Spezifikation geöffnet. In unserem Fall werden 5 CSS-Angaben zur Formatierung des Textes verwendet. "font-family:arial" - Definiert die zu verwendenen Schrift. Es sollten möglichst keine ausgefallenen Schriften verwendet werden, die für den lokalen Browser eventuell nicht vorhanden sind. Greifen Sie lieber auf Standardschrifttypen (arial, helvetica, courier) zurück. "font-size:smaller" - Definition der Schriftgrösse. Weitere Größen: x-small, medium, large, larger,.. . "font-style:italic" - Definition des Schriftstils. In diesem Fall ist es kursiv. Es gibt neben italic noch oblique (kursiv) und normal. "font-weight:light" - Defintion der Schriftstärke. Auch hier existieren verschiedene Alternativen: bold = fett, lighter = dünner, normal = normal. Es kann auch mit numersichen Angaben gearbeitet werden. Die Zahlenreihe reicht von 100 bis 900: Je höher der Wert, desto fetter die Schrift. "color:red" - Definition der Schriftfarbe. Sie können innerhalb der geschweiften Klammern beliebig viele
CSS-Angaben setzen. Die Angaben werden stets durch ein Semikolon
getrennt!
<head> Erklärung des Codes: Im Gegensatz zu Beispiel 1 wurden hier alle CSS-Angaben in eine einzige Zeile geschrieben. Der Browser interpretiert beide Schreibweisen gleich. "word-spacing:5mm" - Definition der Wortabstände. Die Wörter haben hier einen absoluten Abstand von 5mm. Die absoluten Abstände können auch in anderen Maßeinheiten angegeben werden: Z.B. pt (Punkt), cm (Zentimeter) und in (Inch). Neben den absoluten die relativen Abstände. Die wichtigsten sind px und %.
"text-align:center" - Definition der Textausrichtung. Erlaubt sind die drei aus HTML gängigen Angaben center, right und left. Hiermit haben Sie die Möglichkeit, jeden neuen Textabsatz oder auch nur ein Wort entsprechend auf dem Bildschirm auszurichten.
Beispiel 3. Erweiterte Möglichkeiten der Textauszeichnung. <html>
Erklärung des Codes:
<head> <style type="text/css"> <!-- .weg {text-decoration:line-through} #unter {text-decoration:underline} //--> </style> </head> <body> <span class="weg"> Dieser Text wird durchgestrichen angezeigt.</span> <span id="unter"> Dieser Text wird unterstrichen angezeigt. </span> </body> </html> Neben dem neuen Befehl fällt gleich eine andere Neuerung ins Auge. Die Einbindung findet nicht mehr wie gewohnt durch Zuweisung eines HTML Tags statt. Statt dessen finden wir in unserem Beispiel ".weg" und "#unter" vor. ".weg" - Definition einer Klasse. Diese Klasse kann in beliebige Tags integriert werden. In unserem Beispiel wenden wir die Klasse mit dem HTML Tag "span" an. Der wirkliche Vorteil an dieser Form der Einbindung liegt darin, dass Sie die Klassen nicht zwingend an ein bestimmtes HTML Tag binden. Sie können sie an beliebigen Stellen Ihrer HTML Seite erneut einsetzen. Sollte z.B. in einer nachfolgenden Aufzählung der Einsatz wieder erforderlich sein, so verwenden Sie einfach die Klasse erneut im entsprechenden Tag (also hier "<li class="weg">" wäre). "#unter" - Definition eines unabhängigen Formates. Vom Prinzip her von der Wirkung ähnlich wie eine Klasse. "text-decoration:underline" - Mit
dieser Syntax haben wir die Möglichkeit Worte oder Textabschnitte
z.B zu unterstreichen (underline), durchzustreichen
(line-through), überstreichen
(overline) oder blinkend (blink) darzustellen. Vorsicht bei
overline
und blink: Netscape hadert mit overline und
IExplorer mit blink. Beispiel 4. Rahmen und farbiger Texthintergrund. <html>
Erklärung des Codes:
<head> <style type="text/css"> <!-- .rahmen { width:150px; background-color:#FFFFCC; border-style:solid; border-width:2px; border-color:red; } //--> </style> </head> <body> <div class="rahmen">Dieser Text wird eingerahmt und mit einem gelbweißen Hintergrund angezeigt</div> </body> </html> Die in diesem Beispiel neu hinzugekommenen eröffnen vielfätige gestalterische Möglichkeiten; jedoch werden hier erste grobere Unterschiede in der Interpretation der einzelnen Browser sichtbar.
Hierzu
ein kleines Beispiel: Sie möchten um einen Absatz einen Rand
erzeugen. Daraufhin notieren Sie in den CSS-Style-Sheet Angaben:
border-width:5px;, denn es soll aus Ihrer Sicht nur ein Rand
der Stärke 5px
gezogen werden, die Art der Darstellung spielt kein Rolle. Beim Einsatz von border-color:FARBE; ergibt sich die gleiche Problematik. Auch hier wird der IExplorer keinen farbigen Rahmen ohne die Notierung der border-style Angabe anzeigen. Eine weitere Eigenart des IExplorer findet sich in der Interpretierung der Rahmenweite: Während der Netscape Navigator die Weite der längsten Zeile im Absatz anpasst, orientiert sich der IExplorer an der Breite des Bildschirms. Verwenden Sie deshalb immer die Angabe width:BREITENANGABE; . So mit können Sie die verschiedenen Interpretationen umgehen. "width:150px" - Allgemeine Formatierung der Breite. Die üblichen Einheiten sind: cm,px und %. "background-color:#FFFFCC" - Formatierung der Hintergrundfarbe. Hiermit lassen sich Textabsätze oder auch nur einzelne Worte farblich hinterlegen. "border-style:solid" - Formatierung der Darstellung des Rahmens. Es gibt zwei grundsätzliche Gruppen:
"border-width:2px" - Formatierung der Rahmenstärke. Die Stärke des Rahmen wird üblicherweise in px (Pixel) oder cm (Zentimeter) notoert. "border-color:red" - Formatierung der Rahmenfarbe. Die Rahmenfarbe kann namentlich oder Hexadezimal notiert werden. ©2001 de Vries |