[Cascading Style Sheets]
[Inhalt dieses Abschnitts] [Home Page]
Komplette Anleitung

Diese Seite wird nicht zur Online-Ansicht empfohlen und das Verhalten der Links wird fehlerhaft sein; sie ist aber nützlich, wenn Sie die Anleitung zu Cascading Style Sheets aus dem Webbrowser heraus drucken wollen. Beachten Sie auch, daß die Seiten über Style Sheets mit HomeSite hier nicht enthalten sind, sondern in der kompletten Anleitung der Anleitung zu HomeSite 2.5 nachzulesen sind.



Inhalt

Wenn Ihre Bildschirmauflösung auf 640x480 Pixel steht, sollten Sie vielleicht besser diesen Abschnitt ohne seitliches Menü ansehen.

  1. Inhalt
  2. Einführung
  3. Vorteile
  4. Einschränkungen
  5. Einbinden
  6. Vorrang
  7. Vererbung
  8. Styles angeben
  9. Eigenschaften und Werte für Fonts
  10. Eigenschaften und Werte für Text
  11. Eigenschaften und Werte für Hintergrund und Farben
  12. Eigenschaften und Werte für Boxen
  13. Eigenschaften und Werte für Klassifikationen
  14. Eigenschaften und Werte für Positionierung
  15. Eigenschaften und Werte für den Ausdruck
  16. Eigenschaften und Werte für Filter
  17. Eigenschaften und Werte für Fonts
  18. Eigenschaften und Werte für Text
  19. Eigenschaften und Werte für Hintergrund und Farben
  20. Eigenschaften und Werte für Boxen
  21. Eigenschaften und Werte für Klassifikationen
  22. Eigenschaften und Werte für Positionierung
  23. Eigenschaften und Werte für den Ausdruck
  24. Eigenschaften und Werte für Filter
  25. Beispiele für Filter
  26. Andere Eigenschaften und Werte
  27. Schriften
  28. Farben
  29. Spezielle Effekte: Overlays
  30. Positionieren in Netscape 4.0x
  31. Positionieren in Internet Explorer 4.0x
  32. Positionieren in Internet Explorer 3.0x
  33. Overlays mit Scripts
  34. Style Sheet Links mit Scripts
  35. Einheiten
  36. Weitergehendes
  37. Beispiel für ein Style Sheet
  38. Übung
  39. Übung II
  40. Style Sheet-Editoren
  41. Komplette Anleitung (Auf einer Seite: nicht empfohlen zur Online-Betrachtung, aber nützlich, wenn Sie diese Anleitung aus dem Browser heraus drucken wollen; beachten Sie, daß diese Komplett-Anleitung nicht die Seiten über Style Sheets mit HomeSite enthält, die stattdessen in der Komplett-Anleitung in der Anleitung zu HomeSite 2.5 zu finden sind.)

Style Sheets mit HomeSite 2.5

  1. Werkzeugleiste für Styles
  2. Styles einfügen
  3. Embedded Styles
  4. Linked Style Sheets



Einführung

Style Sheets für das Web wurden schon vor einigen Jahren vorgeschlagen und werden seitdem entwickelt, aber erst seit kurzer Zeit haben sie breite Beachtung gefunden. Der Grund ist, daß Style Sheets nutzlos sind, solange sie nicht von Browsern unterstützt werden, und kein verbreiteter Browser tat das, bevor Microsoft teilweise Unterstützung von Cascading Style Sheets (CSS) in Version 3.0 des Internet Explorer anbot. Unterstützung von Style Sheets ist gegeben in IE 3.0 und höher sowie in Netscape 4.0 und höher.

Dieser Abschnitt bietet einen Überblick über CSS, über die Vorteile und Einschränkungen beim Benutzen von Style Sheets und eine Anleitung zu deren Benutzung. Dieser Abschnitt basiert selbst auf Style Sheets, und wenn Sie mehrere Browser haben, sollten Sie vielleicht die Darstellung dieser Seiten z.B. in Internet Explorer (3.0 oder höher) und einem anderen Browser, der keine Style Sheets unterstützt (z.B. Netscape 3.0 oder früher) vergleichen. Beachten Sie, daß Sie die Auswirkungen der Style Sheets nur sehen könenn, wenn Sie die Seiten mit Internet Explorer oder Netscape Communicator 4.0 (oder höher) ansehen.




Vorteile von Style Sheets

Zuerst sollte gesagt werden, daß so ziemlich alles, was Sie mit Style Sheets anstellen können, auch mit konventionellen HTML Tags erreicht werden kann (es gibt einige Ausnahmen, und manche Sachen können nur mit kniffligen HTML-Tricks dargestellt werden). Trotzdem bleiben einige gewichtige Vorteile durch die Benutzung von Style Sheets:

1. Logische Trennung von Informationsstruktur und -formatierung

Im Guide to HTML (engl. Original) wird HTML beschrieben als ein System zur Formatierung von Dokumenten; praktisch gesehen ist das korrekt, aber es entspricht nicht dem Grundgedanken von HTML. Ursprünglich wurde HTML als System zur Strukturierung von Informationen entwickelt, das den relativen Status von Informationsblöcken (Hauptüberschrift, Unterüberschrift, normaler Absatz usw.) auszeichnen und es dem lokalen Browser überlassen sollte, darüber zu entscheiden, welche Formatierung benutzt werden sollte, um die jeweilige Struktur darzustellen. Dieses Design resultierte aus der Idee, daß Web-Dokumente komplett unabhängig von speziellen Voraussetzungen der Plattform oder der Software sein sollten. Es passt auch zur traditionellen Beziehung zwischen Autoren und Herausgebern von gedruckten Texten, wo der Autor den Inhalt und die Informationsstruktur vorgibt und der Herausgeber entscheidet, wie der Text genau aussehen soll. Textverarbeitungen und Systeme zum Desktop Publishing haben allerdings viel von der Entscheidung über das Aussehen des Textes, genau wie über den Inhalt, zurückgegeben in die Hände der Autoren, und viele Autoren sind recht zurückhaltend, wenn sie jetzt diese Macht zurück in die Verantwortung der Webbrowser zurückgeben sollen.

In der Konsequenz wurde HTML zu einer komplexen und recht unordentlichen Kombination von Tags zur Strukturierung und zur Formatierung, was das Verwalten einer großen und komplexen Website sehr schwierig macht (wenn Sie z.b. das FONT Tag benutzen und eine Schriftart auf einer Reihe von Seiten ändern wollen, können Sie Stunden damit zubringen, alle Stellen zu finden, wo das Tag auftaucht). Style Sheets erlauben es Ihnen nun, die Formatierungscodes, die auf mehrere Seiten angewandt werden, zu isolieren, so daß generelle stilistische Änderungen durch Editieren einer einzigen Datei erreicht werden können.

2. Reduzieren der nötigen Bandbreite und der Ladezeit

Wenn ein Benutzer eine Webseite anfordert, dann muß der Browser den gesamten HTML-Code auf der Seite untersuchen, um sie darzustellen. Wenn Sie eine menge komplexer Formatierungen auf Ihrer Seite haben, muß der Browser auf jeder Seite sehr viel prüfen. Durch Auslagern dieser Formatierungsinformationen in ein einzelnes Style Sheet, auf das die einzelnen Seiten verweisen, reduzieren Sie die Menge von Code in den entsprechenden Seiten und verringern dadurch die Datenmenge, die übermittelt und überprüft werden muß. Das bewirkt schneller geladene Seiten und damit glücklichere Benutzer.



Einschränkungen durch Style Sheets

Nach dem Lesen der vorherigen Seite fragen Sie sich jetzt vielleicht "Warum soll ich dann nicht für alle Webseiten Style Sheets verwenden?" Der erste Teil der Antwort ist: das sollten wir wahrscheinlich tun. Der zweite Teil allerdings ist: es ist noch nicht so einfach, wie es wohl sein sollte.

Die Probleme sind vielfältig und zusammenhängend. Selbst jetzt, wo CSS sowohl von Internet Explorer als auch von Netscape unterstützt werden, von denen einer von der großen Mehrheit der Websurfer benutzt wird, gibt es immer noch eine große Zahl von Benutzern, die ein ältere Version von Netscape als 4.0 einsetzen, und sogar manche, die noch IE 2.0 verwenden. Das ist an sich kein großes Problem, solange Sie dafür sorgen, daß Seiten, die Styles verwenden, auch von Browsern ohne Unterstützung für CSS akzeptabel dargestellt werden. Ein zweiter und ernsterer bedenklicher Punkt ist, daß bis jetzt die Implementierung von CSS zwischen Netscape und IE variiert und selbst zwischen IE 3 und 4. Um das zu umgehen haben Entwickler zwei Optionen:

  1. sehr einfache Style Sheets zu schreiben, die mit allen drei Browsern funktionieren
  2. ein JavaScript zu verwenden, um den Browsertyp des Benutzers zu erkennen und dann entsprechend auf verschiedene Style Sheets zu verweisen (und in manchen Fällen unterschiedliche Codezeilen zu schreiben). Ein Script, das diese Aufgabe übernimmt, wird später in dieser Anleitung vorgestellt

Zusätzlich sollten Webautoren folgendes berücksichtigen:

  • Wenn Sie in einem Intranet arbeiten, dessen Benutzer keinen CSS-fähigen Browser einsetzen, hat der Einsatz von Style Sheets wenig (keinen) Sinn
  • Wenn Sie Style Sheets für ein allgemeines Internet-Publikum einsetzen möchten, sollten Sie Sorgfalt walten lassen, damit Benutzer mit Browsern ohne CSS-Fähigkeiten immer noch eine akzeptable Darstellung Ihrer Seiten erreichen

Wenn Sie diesen zweiten Weg gehen wollen, werde ich später einige Tips geben, um Ihre Seiten kompatibel sowohl zu CSS- als auch nicht-CSS-Browsern zu gestalten, lassen Sie mich aber hier einige generelle Vorsichtsmaßnahmen darstellen:

  • Wenn Sie daran denken, zwar Style Sheets zu benutzen, aber die ganzen normalen Formatierungscodes für nicht-CSS-Browser beizubehalten, dann tun Sie's nicht: das verfehlt den Zweck gründlich (die lokale Formatierung wird die Styles übergehen und Sie werden nur mehr Bandbreite brauchen, um Styles zu übertragen, die am Ende gar nichts tun)
  • Wenn Sie daran denken, parallel Seiten mit und ohne Style Sheets zur Verfügung zu stellen, dann tun Sie's nicht: jeder, der den Gedanken schon einmal hatte und das versucht hat, wird Ihnen bestätigen, daß die Verwaltung von parallelen Seiten ein Alptraum ist, den man nicht mitmachen sollte, solange man nicht 1) zu Tode gelangweilt ist und einen Weg sucht, effektiv Zeit zu vergeuden, oder 2) unter Androhung von Gewalt dazu gezwungen wird...

Das Fazit lautet: wenn Sie im Internet Style Sheets verwenden wollen, müssen Sie bereit sein, den Preis zu zahlen, daß manche Benutzer (hoffentlich eine schnell sinkende Zahl) ziemlich karge Seiten zu sehen bekommen werden.



Einsatz von Styles

Styles können auf verschiedene Arten in Dokumente eingefügt werden:

  1. durch linking (Verbinden) einer separaten Style Sheet-Datei mit einer oder mehreren Webseiten

    Das ist die Methode, die ich empfehle, weil sie es erlaubt, ein einziges Style Sheet für viele Seiten, vielleicht sogar für Ihre ganze Site zu verwenden, was am effizientesten ist. (Das funktioniert unter Umständen nicht, wenn Sie dazu neigen, die Formatierung auf jeder Seite stark abwandeln, was aber generell keine gute Idee im Sinne der effektiven Kommunikation ist.) Es trennt auch die Styleangaben völlig von den Inhalten der Seiten, was verhindert, daß Browser ohne CSS-Fähigkeiten die Styleinformationen für Seiteninhalte halten.

    In diesem Fall definieren Sie die Styles in einer separaten Datei mit der Endung .css und verweisen darauf mit einem link-Tag, das in den Abschnitt head jeder HTML-Datei eingebaut wird, die das jeweilige Style Sheet benutzen soll:

    Beispiel

    <html>
    <head>
    <link rel=STYLESHEET href="../../styles/ie4.css" type="text/css">
    <title>...</title>
    </head>
    <body>...

    Beachten Sie das Attribut "type=text/css", auch benutzt im <style> Tag unten, wodurch diese Angabe als Cascading Style Sheet identifiziert wird. (Die neueste Version des Internet Explorer benötigt das nicht mehr, aber es ist am sichersten, es einzubauen, da andere Browser es vielleicht brauchen, wenn sie die Unterstützung für Style Sheets einbauen.)

  2. durch embedding (Einbetten) eines Style Sheets in eine einzelne Webseite

    In diesem Fall definieren Sie die Styles in einem style-Tag, das zwischen dem <html>-Tag und dem <body>-Tag steht:

    Beispiel

    <html>

    <style type="text/css">
    <!--
    P { font-size: 10pt; font-family: "Verdana, Arial, Sans-Serif"; color: #000066 }
    H1 { font-size: 16pt; font-family: "Impact, Arial, Sans-Serif"; color: #990000 }
    -->
    </style>

    <head>...</head>
    <body>...

    Beachten Sie, daß die genauen Style-Angaben (auf die ich auf den folgenden Seiteneingehen werde) in einem comment (Kommentar)-Tag eingebettet sind -- das stellt sicher, daß Browser, die keine CSS unterstützen, diese Zeilen als darzusstellenden Inhalt interpretieren.

  3. durch Hinzufügen von inline style attributes zu Tags wie <p>, <div> oder <span>

    In diesem Fall geben Sie einen Style für einen einzelnen Block Text an oder benutzen das <span>-Tag, um den Style für ein Wort oder einen Satz anzugeben:

    Beispiel

    <div style="margin-left: 0.5in; font-size: 10pt">
    Das würde einen eingezogenen Absatz mit
    <span style="font-weight: bold; background: #FFFF00">hervorgehobenem Text</span>
    darin ergeben
    </div>



Rangfolge von Styles

In manchen Fällen könnte es vorkommen, daß Sie unterschiedliche Funktionen von Styles für den gleichen Text durch eine Kombination eines "linked style sheet", eines "embedded style tag" und von "inline style attributes" verwenden. Wenn diese unterschiedlichen Angaben untereinander in Konflikt geraten, muß der Browser entscheiden, welcher Wert davon zu benutzen ist. Die Auswahl geschieht auf der Grundlage einer Regel der Rangfolge [precedence] (das ist es, was durch cascading Style Sheets ausgedrückt wird; die Styles bauen aufeinander auf).

Die Rangfolge der Cascading Style Sheets ist wie folgt:

  • inline styles attributes haben Vorrang vor embedded style tags
  • embedded style tags wiederum haben Vorrang vor linked style sheets

Es ist wichtig, sich diese Anordnung einzuprägen, damit Sie wissen, welche Werte von Style andere überschreiben.



Vererbung

Ein weiteres grundlegendes Konzept, bevor wir uns den Details der Definition von Styles eidmen. Wie wir auf den folgenden Seiten sehen werden, kann man Style-Angaben sowohl für linked style sheets als auch embedded style tags für verschiedene HTML-Elemente wie <p>, <h1>, <li>, <table> usw. machen. Einiges an zusätzlicher Flexibilität bei Styles kann durch Style-Vererbung (inheritance) erreicht werden. Vererbung bedeutet, daß Sie zusätzliche Klassen (classes) jedes Elements angeben können, und jede Klasse wird einige der Style-Angaben des Grundelements erben, solange nicht explizit neue Werte eingetragen werden oder die jeweilige Funktion nicht vererbt wird. (Die Tabelle der Eigenschaften (properties) zeigt, welche vererbt werden und welche nicht.)

Beispiel

P
{
font-family: 'Trebuchet MS', 'Comic Sans MS', 'Arial', 'Sans-Serif', 'Helvitica';
font-weight: bold;
font-size: 11pt;
color: #000066;
position: relative;
margin-left: 1cm;
}

erstellt einen Absatz, der so aussieht wie dieser... während

P.small
{
font-family: 'Arial', 'Sans-Serif';
font-weight: normal;
font-size: 8pt;
text-align: center;
}

einen Absatz mit diesem Aussehen produziert.

Um den Basisabsatz zu erstellen, würden Sie einfach ein <p>-Tag benutzen, und zum Darstellen des kleinen, zentrierten Absatzes würden Sie das Attribut class=small hinzufügen (<p class=small>). Beachten Sie, daß auch generelle Klassen definiert werden können, die dann mit beliebigen HTML-Elementen Verwendung finden:

Beispiel

.note
{
font-size: 10pt;
color: #006600;
background: #FFFFFF;
position: relative;
padding: 2pt;
border-width: thin;
border-style: ridge;
}

Ist diese Klasse definiert, dann wird ein von <blockquote class=note> umgebener Absatz so wie dieser aussehen. (Die Umrandung ist nicht sichtbar, wenn Sie IE 3.x einsetzen)

Achten Sie darauf, daß nur eine Ebene von Klassen erlaubt ist: eine Klasse P.note.red wird nicht funktionieren.

Spezielle Klassen für Links

Sie sollten sich auch der vordefinierten Klassen für das <a>-Tag bewusst sein:

A.link { color: #FFFF00 }
A.visited { color: #990099 }
A.active { color: #FF0000 }

Wie bei jeder anderen Klassendefinition können Sie die Farbe und andere Werte so einstellen, wie Sie möchten; wir werden uns auf den folgenden Seiten ansehen, wie das gemacht wird.

Wenn Sie wollen, daß Links und bereits besuchte Links sich durch unterschiedliche Farben hervorheben, wie wir es von den meisten Webseiten gewohnt sind, dann müssen diese Klassen in Ihren Style Sheets definiert sein. Und es gibt noch eine Einschränkung: die Klasse A.active wird von Internet Explorer noch nicht unterstützt. Das ist schade, da der aktive Link bei Seiten in Frames nützlich sein kann, bei denen ein Frame den Inhalt eines Abschnitts darstellt (d.h. die Farbänderung des aktiven links würde automatisch den derzeitigen Standort des Benutzers in der Inhaltsliste kennzeichnen, ein Effekt, den Webdesigner normalerweise durch komplizierte und ineffiziente Mittel erreichen). Da die Klasse A.active aber möglicherweise nützlich werden kann, empfehle ich trotzdem, sie jetzt schon in Ihren Style Sheets einzubauen, damit sie schon da ist, wenn die Unterstützung dafür eintrifft -- bis dahin wird sie bestimmt nicht schaden.

Es gibt einige andere vordefinierte "pseudo-classes" für die erste Zeile und den ersten Buchstaben von Textblocks, aber diese werden noch nicht von Internet Explorer unterstützt.

Allgemein gesprochen ist Vererbung eine machtvolle Abkürzung zum Erstellen von Variationen eines Styles, in der gleichen Art, in der Vererbung es objekt-orientierten Programmierern erlaubt, effizient Variationen von Objekten zu erstellen (Style Sheets zu erstellen ist eigentlich eine sehr einfache Form des objekt-orientierten Programmierens). Gelegentlich kann aber die Vererbung zu einem Ärgernis werden, da bestimmte Eigenschaften vererbt werden, die Sie eigentlich nicht haben wollten (wir werden später ein Beispiel sehen).



Styles definieren

Wie Sie vielleicht schon beim Betrachten der Beispiele auf den vorhergehenden Seiten gesehen haben, werden Styles angegeben als Paare property: value (Eigenschaft: Wert), die durch Strichpunkte getrennt sind. Jeder Wert kann durch Anführungszeichen umgeben sein und Werte aus mehreren Wörtern wie "Trebuchet MS" sollten es immer sein; daran sollten Sie besonders dann denken, wenn Sie einen HTML-Editor verwenden, um Eigenschaften und Werte automatisch einzusetzen, da viele die Anführungszeichen weglassen.

Inline Styles

Bei inline styles wird die Textkette aus den Paaren property: value in Anführungszeichen eingeschlossen und als Wert für das Attribut style gesetzt:

<li style="font-size: 10pt; font-weight: bold">

Linked und Embedded Styles

Bei linked style sheets oder embedded style tags werden die Style-Angaben für verschiedene selectors (jedes HTML-Element kann ein Selector sein) gesetzt. In diesem Fall sind die Paare property: value der Style-Definition in spitzen Klammern (braces) eingeschlossen, die nach dem Selector stehen:

H2
{
font-family: 'Trebuchet MS', 'Comic Sans MS', 'Arial', 'Sans-Serif';
font-weight: bold;
font-size: x-large;
color: #660066;
}

Beachten Sie, daß für den Fall, daß einer der Werte aus mehreren Wörtern besteht (wie im Fall der Werte für font-family im obigen Beispiel) jeder Wert in der Liste für diese Eigenschaft von Anführungszeichen umgeben sein sollte.

Erinnern Sie sich auch daran, daß Sie mehrere Klassen (aber nur eine Ebene tief) für einen Selector angeben können, um die Styleangaben zu variieren, wie wir es bei der Erklärung von Vererbung sahen.

Styles im Kontext

Schließlich sollten Sie auch wissen, daß sie contextual Styles erstellen können, indem Sie zwei Selectors kombinieren:

P STRONG { color: #FF0000 }

Dieser Style würde nur Text betreffen, der innerhalb eines STRONG Elements steht und dieses wiederum in einem PARAGRAPH Element. Wenn Sie möchten, daß mit STRONG ausgezeichneter Text vom Kontext unabhängig immer gleich aussieht, dann erstellen Sie einfach ein simples Style mit STRONG als Selector:

STRONG { color: #FF0000 }

In beiden Fällen müssen Sie wissen, daß jede andere Styleangabe für das Element, in dem der Text mit Auzeichnung STRONG auftaucht, wirksam bleibt, solange die Styleangabe für STRONG diese nicht explizit überschreibt.



Fonts: Eigenschaften und Werte

Unten finden Sie eine Tabelle der Style-Eigenschaften und -Werte für Fonts (Schriftarten) -- andere Eigenschaften und Werte sind auf den folgenden Seiten aufgeführt. (Ich habe hier nur Eigenschaften und Werte aufgenommen, die im Moment von Internet Explorer und Netscape erkannt werden -- weitere werde ich hinzufügen, sobald sie unterstützt werden)

Häufig benutzte Eigenschaften und Werte für Cascading Style Sheets

Legende der Tabelle
IE3 Unterstützt von Internet Explorer 3.x
IE4 Unterstützt von Internet Explorer 4.x
N4 Unterstützt von Netscape 4.x
pt = points (Punkte)
in = inches (Zoll)
cm = centimeters (Zentimeter)
px = pixels (Pixel)
em = Höhe der Schriftart des jeweiligen Elements
(die Einheit em wird noch nicht häufig unterstützt und sollte sehr vorsichtig eingesetzt werden)
  Eigenschaft Beschreibung Werte Beispiel
Schrift-Eigenschaften
IE3 IE4
N4
font-size (Schriftgröße; wird vererbt) Legt die Größe des Texts fest Größe (pt, in, cm, px)
Prozentsatz der normalen Größe
relativ:
xx-large, x-large, large, medium, small, x-small, xx-small, larger, smaller
{ font-size: 12pt }
{ font-size: 200% }
{ font-size: x-large }
IE3 IE4
N4
font-family (Schriftartenfamilie; wird vererbt) Legt die Schriftart und Alternativen fest (in der Reihenfolge der Ähnlichkeit) Name der Schriftart
Name der Schriftfamilie
{ font-family: "Trebuchet MS," "Sans-serif" }
IE3 IE4
N4
font-weight (Schriftgrad; wird vererbt) Legt den Schriftgrad der Schrift fest normal
bold (fett)
(andere Optionen werden später unterstützt)
{ font-weight: bold }
IE3 IE4
N4
font-style (Schriftstil; wird vererbt) Stellt Text kursiv dar normal
italic (kursiv)
(mehr Optionen werden später unterstützt; 'oblique smallcaps' nur in IE4 möglich)
{ font-style: italic }
IE4
font-variant (Schrift-Variante; wird vererbt) Gibt einen anderen Schriftschnitt an smallcaps
(mehr Optionen werden später verfügbar sein)
{ font-variant: smallcaps }
IE4
@font-face Gibt die Quelle für eine Schriftart an, die nicht auf dem System des Benutzers vorhanden ist
(beachten Sie die Anmerkung unter dieser Tabelle)
@font-face { font-family: (font-family) ; url(URL); } @font-face comic { src:url(http://site/comicbold.eot); }

Der spezielle Style @font-face wird wahrscheinlich in der Final-Version von IE4 implementiert sein, vorausgesetzt, er wird vom World Wide Web Consortium akzeptiert; im Moment konnte ich noch keine Informationen über den Aufbau oder Beispiele dieser ".eot" (Open Type) Dateien finden -- besuchen Sie Microsoft's Typography Page, um sich über die Entwicklung zu informieren; ich werde diese Seite aktualisieren, wenn mehr Informationen verfügbar werden.



Text: Eigenschaften und Werte

Unten sehen Sie die Style-Eigenschaften und Werte für Text. (Ich habe hier nur Eigenschaften und Werte aufgenommen, die im Moment von Internet Explorer und Netscape erkannt werden -- weitere werde ich hinzufügen, sobald sie unterstützt werden)

Häufig benutzte Eigenschaften und Werte für Cascading Style Sheets

Legende der Tabelle
IE3 Unterstützt von Internet Explorer 3.x
IE4 Unterstützt von Internet Explorer 4.x
N4 Unterstützt von Netscape 4.x
pt = points (Punkte)
in = inches (Zoll)
cm = centimeters (Zentimeter)
px = pixels (Pixel)
em = Höhe der Schriftart des jeweiligen Elements
(die Einheit em wird noch nicht häufig unterstützt und sollte sehr vorsichtig eingesetzt werden)
  Eigenschaft Beschreibung Werte Beispiel
Text-Eigenschaften
IE3 IE4
N4
line-height (Zeilenhöhe; wird vererbt) Legt den Abstand der Grundlinien des Textes fest Größe (pt, in, cm, px, em)
Prozentsatz (%) von font-size (Schriftgröße)
{ line-height: 18pt } { line-height: 120% }
IE3 IE4
N4
text-decoration (Textauszeichnung; wird nicht vererbt) Unterstreicht oder hebt Text sonstwie hervor none (keine)
underline (unterstrichen)
overline (Überstrichen)
line-through (durchgestrichen)
{ text-decoration: underline }
IE3 IE4
N4
text-align (Textausrichtungwird vererbt) Legt die Ausrichtung des Textes fest, am linken oder rechten and bzw. zentriert left (linksbündig)
center (zentriert)
right (rechtsbündig)
{ text-align: right }
IE3 IE4
N4
text-indent (Texteinzug; wird vererbt) Legt den Abstand vom linken Rand fest Größe (pt, in, cm, px) { text-indent: 0.5in }
IE4
vertical-align (vertikale Ausrichtung; wird nicht vererbt) richtet Text innerhalb des Elements vertikal aus baseline (Grundlinie)
sub (tiefgestellt)
super (hochgestellt)
top (oberer Rand)
text-top (oben am Text)
middle (Mitte)
bottom (unterer Rand)
text-bottom (unten am Text)

Prozentsatz der Zeilenhöhe (line-height) von der Grundlinie (baseline) aus (%)
{ vertical-align: super }
IE4
N4
text-transform (Text-Umwandlung; wird vererbt) Legt die Zeichen des Texts fest capitalize (wandelt den ersten Buchstaben jedes Worts in Großbuchstaben um)
uppercase (alle Buchstaben großgeschrieben)
lowercase (alle Buchstaben kleingeschrieben)
{ text-transform: capitalize }
IE4
letter-spacing (Speerung des Textes; wird vererbt) Legt die Sperrung des Textes (den Abstand zwischen einzelnen Buchstaben) fest
(Ünterstützung für die Final-Version von IE 4.0 erwartet)
normal,
Größe (pt, in, cm, px, em)
{ letter-spacing: 2pt }


Farben und Hintergrund: Eigenschaften und Werte

Unten finden Sie eine Tabelle der Style-Eigenschaften und -Werte für Farben und Hintergrund -- andere Eigenschaften und Werte sind auf den folgenden Seiten aufgeführt. (Ich habe hier nur Eigenschaften und Werte aufgenommen, die im Moment von Internet Explorer und Netscape erkannt werden -- weitere werde ich hinzufügen, sobald sie unterstützt werden)

Häufig benutzte Eigenschaften und Werte für Cascading Style Sheets

Legende der Tabelle
IE3 Unterstützt von Internet Explorer 3.x
IE4 Unterstützt von Internet Explorer 4.x
N4 Unterstützt von Netscape 4.x
pt = points (Punkte)
in = inches (Zoll)
cm = centimeters (Zentimeter)
px = pixels (Pixel)
em = Höhe der Schriftart des jeweiligen Elements
(die Einheit em wird noch nicht häufig unterstützt und sollte sehr vorsichtig eingesetzt werden)
  Eigenschaft Beschreibung Werte Beispiel
Color and Background
IE3 IE4
N4
color (Farbe; wird vererbt) Legt die Farbe des Textes fest Farbname
Tripel aus RGB-Werten
Hex-Code
RGB-Werte
{ color: blue }
{ color: #00F }
{ color: #0000FF }
{ color: RGB 0.0 0.0 1.0 }
IE3 IE4
N4
background (Hintergrund; wird nicht vererbt) (IE3.x unterstützt Hintergrundbilder nur in embedded Style Sheets) Legt das Hintergrundbild oder die -farbe fest url(URL) (mit oder ohne repeat zum Kacheln);
Farbname (oder transparent oder zwei Farbnamen, wobei dann überblendet wird, getrennt durch ein /);
RGB-Tripel (Hex-Code)
{ background: url(image1.gif) repeat }
{ background: Red }
{ background: Red / Blue }
{ background: transparent }
{ background: #CCCCCC }
IE3 IE4
N4
background-color (Hintergrundfarbe; wird nicht vererbt) (IE3.x unterstützt Hintergrundbilder nur in embedded Style Sheets) Legt die Hintergrundfarbe fest Farbname;
RGB-Tripel (Hex-Code)
{ background-color: Red }
{ background-color: #CCCCCC }
IE4
background-image (Hintergrundbild; wird nicht vererbt) (IE3.x unterstützt Hintergrundbilder nur in embedded Style Sheets) Legt das Hintergrundbild fest URL { background-image: url(image1.gif) }
IE4
background-repeat (Kachelung des Hintergrunds; wird nicht vererbt) (IE3.x unterstützt Hintergrundbilder nur in embedded Style Sheets) Schaltet die Wiederholung ein, um Hintergrundbilder zu kacheln repeat (Wiederholung horizontal und vertikal);
repeat-x (Wiederholung horizontal);
repeat-y (Wiederholung vertikal);
no-repeat (keine Wiederholung)
{ background-repeat: repeat-y }
IE4
background-attachment (Fixieren des Hintergrunds; wird nicht vererbt) (IE3.x unterstützt Hintergrundbilder nur in embedded Style Sheets) Fixiert ein Hintergrundbild oder gestattet es ihm, mit dem rest der Seite zu scrollen scroll (scrollt mit) oder fixed (fixiert) { background: fixed }
IE4
background-position (Psoition des Hintergrunds; wird vererbt) (IE3.x unterstützt Hintergrundbilder nur in embedded Style Sheets) Legt den Ursprung des Hintergrundbilds fest
(Beachten Sie, daß die Standardposition, 0,0 oder 0%,0%, die linke obere Ecke des Element ist)
Position (x y) oder (x% y%);
top, center, bottom (oben, Mitte, unten)
left, center, right (links, zentriert, rechts)
{ background-position: 2cm 1cm }
{ background-position: 50% 20% }
{ background-position: top center }
{ background-position: top }
{ background-position: bottom right }


Boxen: Eigenschaften und Werte

Unten finden Sie eine Tabelle der Style-Eigenschaften und -Werte für Boxen -- andere Eigenschaften und Werte sind auf den folgenden Seiten aufgeführt. (Ich habe hier nur Eigenschaften und Werte aufgenommen, die im Moment von Internet Explorer und Netscape erkannt werden -- weitere werde ich hinzufügen, sobald sie unterstützt werden)

Häufig benutzte Eigenschaften und Werte für Cascading Style Sheets

Legende der Tabelle
IE3 Unterstützt von Internet Explorer 3.x
IE4 Unterstützt von Internet Explorer 4.x
N4 Unterstützt von Netscape 4.x
pt = points (Punkte)
in = inches (Zoll)
cm = centimeters (Zentimeter)
px = pixels (Pixel)
em = Höhe der Schriftart des jeweiligen Elements
(die Einheit em wird noch nicht häufig unterstützt und sollte sehr vorsichtig eingesetzt werden)
  Eigenschaft Beschreibung Werte Beispiel
Eigenschaften für Boxen und Ränder
IE3 IE4
N4
margin-left (linker Rand; wird nicht vererbt) Legt den Abstand vom linken Rand der Seite fest Größe (pt, in, cm, px)
{ margin-left: 1in }
IE3 IE4
N4
margin-right (rechter Rand; wird nicht vererbt) Legt den Abstand vom rechten Rand der Seite fest Größe (pt, in, cm, px)
{ margin-right: 1in }
IE3 IE4
N4
margin-top (oberer Rand; wird nicht vererbt) Legt den Abstand zum unteren Rand des vorherigen Elements fest Größe (pt, in, cm, px)
{ margin-top: -20pt }
IE3 IE4
N4
margin-bottom (unterer Rand; wird nicht vererbt) Legt den Abstand zum oberen Rand des nächsten Elements fest Größe (pt, in, cm, px)
{ margin-bottom: 20pt }
IE3 IE4
N4
margin (Rand; wird nicht vererbt) Legt Ränder an den vier Seiten eines Elements fest (wenn nur ein Wert angegeben ist, gilt dieser für alle Seiten; sind es zwei oder drei, dann werden für die fehlenden Werte die der gegenüberliegenden Seite benutzt.) Größe (pt, in, cm, px) oder Prozentsatz der Schriftgröße in folgender Reihenfolge: oben, rechts, unten, links (also im Uhrzeigersinn)
{ margin: .5cm .5cm 1cm .5cm }
IE4
N4
padding (wird nicht vererbt) Legt das Padding (Abstand Rand des Elements - Inhalt des Elements) an allen vier Seiten des Inhalts eines Elements fest (wenn nur ein Wert angegeben ist, gilt dieser für alle Seiten; sind es zwei oder drei, dann werden für die fehlenden Werte die der gegenüberliegenden Seite benutzt.) Größe (pt, in, cm, px) oder Prozentsatz der Schriftgröße in folgender Reihenfolge: oben, rechts, unten, links (also im Uhrzeigersinn)
{ padding: .5cm .5cm 1cm .5cm }
IE3 IE4
N4
padding-top (oberes Padding; wird nicht vererbt) Legt das Padding am oberen Rand des Inhalts eines Elements fest Größe (pt, in, cm, px) oder Prozentsatz der Schriftgröße
{ padding-top: 5pt }
IE4
N4
padding-right (rechtes Padding; wird nicht vererbt) Legt das Padding am rechten Rand des Inhalts eines Elements fest Größe (pt, in, cm, px) oder Prozentsatz der Schriftgröße
{ padding-right: 5pt }
IE4
N4
padding-bottom (wird nicht vererbt) Legt das Padding am unteren Rand des Inhalts eines Elements fest Größe (pt, in, cm, px) oder Prozentsatz der Schriftgröße { padding-bottom: 5pt }
IE4
N4
padding-left (wird nicht vererbt) Legt das Padding am linken Rand des Inhalts eines Elements fest Größe (pt, in, cm, px) oder Prozentsatz der Schriftgröße { padding-left: 5pt }
IE4
N4
border-top-width (Breite der oberen Begrenzung; wird nicht vererbt) Legt die Breite der oberen Begrenzung eines Elements fest Größe (pt, in, cm, px);
thin, medium, thick (dünn. mittel, dick)
{ border-top-width: thin }
IE4
N4
border-right-width (Breite der rechten Begrenzung; wird nicht vererbt) Legt die Breite der rechten Begrenzung eines Elements fest Größe (pt, in, cm, px);
thin, medium, thick (dünn. mittel, dick)
{ border-right-width: thin }
IE4
N4
border-bottom-width (wird nicht vererbt) Legt die Breite der unteren Begrenzung eines Elements fest Größe (pt, in, cm, px);
thin, medium, thick (dünn. mittel, dick)
{ border-bottom-width: thin }
IE4
N4
border-left-width (wird nicht vererbt) Legt die Breite der linken Begrenzung eines Elements fest Größe (pt, in, cm, px);
thin, medium, thick (dünn. mittel, dick)
{ border-left-width: thin }
IE4
N4
border-width (wird nicht vererbt) Legt die Breite der Begrenzung eines Elements auf allen Seiten fest; in der Reihenfolge oben, rechts, unten, links, also im Uhrzeigersinn (wenn nur ein Wert angegeben ist, gilt dieser für alle Seiten; sind es zwei oder drei, dann werden für die fehlenden Werte die der gegenüberliegenden Seite benutzt.) Größe (pt, in, cm, px);
thin, medium, thick (dünn. mittel, dick)
{ border-width: thin thin thick thin }
IE4
border-top-color (wird nicht vererbt) Legt die Farbe der oberen Begrenzung eines Elements fest Farbname oder Hex-Code { border-top-color: green }
IE4
border-right-color (wird nicht vererbt) Legt die Farbe der rechten Begrenzung eines Elements fest Farbname oder Hex-Code { border-right-color: green }
IE4
border-bottom-color (wird nicht vererbt) Legt die Farbe der unteren Begrenzung eines Elements fest Farbname oder Hex-Code { border-bottom-color: #00FF00 }
IE4
border-left-color (wird nicht vererbt) Legt die Farbe der linken Begrenzung eines Elements fest Farbname oder Hex-Code { border-left-color: thin }
IE4
N4
border-color (wird nicht vererbt) Legt die Farbe aller Begrenzungen eines Elements auf allen Seiten fest; in der Reihenfolge oben, rechts, unten, links, also im Uhrzeigersinn (wenn nur ein Wert angegeben ist, gilt dieser für alle Seiten; sind es zwei oder drei, dann werden für die fehlenden Werte die der gegenüberliegenden Seite benutzt; beachten Sie, daß Netscape 4.0 nur einen Wet erlaubt) Farbname oder Hex-Code { border-color: green #FFFF00 #00FFFF green } (IE4)
{ border-color: green } (IE4 oder Netscape 4)
IE4
border-top-style (wird nicht vererbt) Legt das Aussehen (style) der oberen Begrenzung eines Elements fest Name des Styles (none, solid, double, groove, ridge, inset, outset) { border-top-style: ridge }
IE4
border-right-style (wird nicht vererbt) Legt das Aussehen der rechten Begrenzung eines Elements fest Name des Styles (none, solid, double, groove, ridge, inset, outset) { border-right-style: solid }
IE4
border-bottom-style (wird nicht vererbt) Legt das Aussehen der unteren Begrenzung eines Elements fest Name des Styles (none, solid, double, groove, ridge, inset, outset) { border-bottom-style: groove }
IE4
border-left-style (wird nicht vererbt) Legt das Aussehen der linken Begrenzung eines Elements fest Name des Styles (none, solid, double, groove, ridge, inset, outset) { border-left-style: inset }
IE4
N4
border-style (wird nicht vererbt) Legt das Aussehen aller Begrenzungen eines Elements fest Name des Styles (none, solid, double, groove, ridge, inset, outset) { border-style: outset }
IE4
border-top (wird nicht vererbt) Legt die Breite, die Farbe und das Aussehen der oberen Begrenzung eines Elements fest Breite, Farbe und Style { border-top: thin green ridge }
IE4
border-right (wird nicht vererbt) Legt die Breite, die Farbe und das Aussehen der rechten Begrenzung eines Elements fest Breite, Farbe und Style { border-right: thin green ridge }
IE4
border-bottom (wird nicht vererbt) Legt die Breite, die Farbe und das Aussehen der unteren Begrenzung eines Elements fest Breite, Farbe und Style { border-bottom: thin green ridge }
IE4
border-left (wird nicht vererbt) Legt die Breite, die Farbe und das Aussehen der linken Begrenzung eines Elements fest Breite, Farbe und Style { border-left: thin green ridge }
IE4
border (wird nicht vererbt) Legt die Breite, die Farbe und das Aussehen aller Begrenzungen eines Elements fest Breite, Farbe und Style { border: thin green ridge }
IE4
N4
float (wird nicht vererbt) Lässt das Element auf eine Seite rücken und anderen Text darumfließen. (Verwendet in den Elementen DIV und SPAN.) left, right oder none (link, rechts oder eben nicht) { float: left }
IE4
N4
clear (wird nicht vererbt) Gibt an, ob das Element von 'floating' Elementen umgeben sein darf -- führt dazu, daß das Element unterhalb jeglicher 'floating' Elemente auf der angegebenen Seite angeordnet wird. left, right oder both (links, rechts, beide) { clear: left }


Klassifizierungen: Eigenschaften und Werte

Unten finden Sie eine Tabelle der Style-Eigenschaften und -Werte für Klassifizierungen -- andere Eigenschaften und Werte sind auf den folgenden Seiten aufgeführt. (Ich habe hier nur Eigenschaften und Werte aufgenommen, die im Moment von Internet Explorer und Netscape erkannt werden -- weitere werde ich hinzufügen, sobald sie unterstützt werden)

Häufig benutzte Eigenschaften und Werte für Cascading Style Sheets

Legende der Tabelle
IE3 Unterstützt von Internet Explorer 3.x
IE4 Unterstützt von Internet Explorer 4.x
N4 Unterstützt von Netscape 4.x
pt = points (Punkte)
in = inches (Zoll)
cm = centimeters (Zentimeter)
px = pixels (Pixel)
em = Höhe der Schriftart des jeweiligen Elements
(die Einheit em wird noch nicht häufig unterstützt und sollte sehr vorsichtig eingesetzt werden)
  Eigenschaft Beschreibung Werte Beispiel
Eigenschaften: Klassifizierungen
IE4
N4
display (Anzeige; wird nicht vererbt) bewirkt, daß das Element nicht dargestellt wird (kein Platz wird dafür auf der Seite reserviert) keine { display: none }
IE4
N4
list-style-type (wird vererbt) Legt das Erscheinungsbild für die Markierungen von Listenpunkten fest (zum Einsatz mit LI-Elementen) disk; circle; square; decimal; lower-roman; upper-roman; lower-alpha; upper-alpha; none
(ausgefüllter Kreis; Kreislinie; Quadrat; Zahlen; kleine röm. Zahlen; große röm. Zahlen; kleine Buchstaben; große Buchstaben)
{ list-style-type: square }
IE4
N4
list-style-image (wird vererbt) gibt ein Bild an, das für die Markierungen der Listeneinträge verwendet wird (zum Einsatz mit LI-Elementen) url(URL); keins { list-style-image: url(redball.jpg) }
IE4
N4
list-style-position (wird vererbt) gibt die Position der Markierungen für Listeneinträge an (zum Einsatz mit LI-Elementen) inside; outside (innen, außen) { list-style-position: inside }
IE4
N4
list-style (wird vererbt) Gibt die Position, das Aussehen und einen Bild-URL der Markierungen für Listeneinträge an (zum Einsatz mit LI-Elementen) inside; outside
disk; circle; square; decimal; lower-roman; upper-roman; lower-alpha; upper-alpha; none
URL
{ list-style: inside disk url(redball.jpg) }


Positionierung: Eigenschaften und Werte

Unten finden Sie eine Tabelle der Style-Eigenschaften und -Werte für Positionierungen -- andere Eigenschaften und Werte sind auf den folgenden Seiten aufgeführt. (Ich habe hier nur Eigenschaften und Werte aufgenommen, die im Moment von Internet Explorer und Netscape erkannt werden -- weitere werde ich hinzufügen, sobald sie unterstützt werden)

Häufig benutzte Eigenschaften und Werte für Cascading Style Sheets

Legende der Tabelle
IE3 Unterstützt von Internet Explorer 3.x
IE4 Unterstützt von Internet Explorer 4.x
N4 Unterstützt von Netscape 4.x
pt = points (Punkte)
in = inches (Zoll)
cm = centimeters (Zentimeter)
px = pixels (Pixel)
em = Höhe der Schriftart des jeweiligen Elements
(die Einheit em wird noch nicht häufig unterstützt und sollte sehr vorsichtig eingesetzt werden)
  Eigenschaft Beschreibung Werte Beispiel
Positioning: Eigenschaften
IE4
N4
clip (wird nicht vererbt) Gibt ein Gebiet eines Elements an, das transparent dargestellt werden soll rect (oben rechts unten links) wobei oben rechts unten links entweder auto sind oder Längenwerte (pt, in, cm, px) { clip: rect (5pt auto auto auto) }
IE4
N4
height (Höhe; wird nicht vererbt) Gibt die Höhe eines Elements an (am nützlichsten zum Skalieren von Bildern; das Seitenverhältnis bleibt erhalten, wenn width (Breite) als auto angegeben ist) auto oder Längenwerte (pt, in, cm, px) oder Prozentsatz { height: 50px }
IE4
N4
width (wird nicht vererbt) Gibt die Breite eines Elements an (am nützlichsten zum Skalieren von Bildern; das Seitenverhältnis bleibt erhalten, wenn height (Höhe) als auto angegeben ist) auto oder Längenwerte (pt, in, cm, px) oder Prozentsatz { width: 50% }
IE4
N4
left (wird nicht vererbt) Gibt die linke Position eines Elements relativ oder absolut an auto oder Längenwerte (pt, in, cm, px) oder Prozentsatz { left: 2pt }
IE4
N4
top (wird nicht vererbt) Gibt die obere Position eines Elements relativ oder absolut an auto oder Längenwerte (pt, in, cm, px) oder Prozentsatz { top: -2pt }
IE4
N4
overflow (wird nicht vererbt) Legt die Handhabung eines Elements fest, das relativ oder absolut positioniert ist und ein anderes Element überdeckt clip (überdeckter Teil bleibt unsichtbar) oder none (überdeckter Teil wird angezeigt) oder scroll (um den überdeckten Teil freizugeben) { overflow: clip }
IE4
N4
position (wird nicht vererbt) Gibt an, ob das Element positioniert werden kann absolute (absolut bezogen auf das Dokument); relative (relativ in Bezug auf das übergeordnete Element); static (statisch; Standardwert -- nicht positioniert) { position: relative }
IE4
N4
visibility (wird nicht vererbt) Gibt an, ob das Element sichtbar ist (Platz für das Element wird in beiden Fällen reserviert) visible; hidden (sichtbar, versteckt) { visibility: hidden }
IE4
z-index (wird nicht vererbt) Gibt an, ob das Element ober- oder unterhalb anderer überlappender Elemente legt (beachten Sie, daß Netscape 4.0 dies mit dem Attribut layer behandelt) number (Zahl; positiv für oberhalb, negativ für unterhalb, startend bei 1; als Standard erhalten aufeinander folgende Elemente höhere Nummern) { z-index: 2 }
Netscape 4
white-space (wird nicht vererbt) Gibt an, ob das Element normal angezeigt wird oder wie ein vorformatierter Text normal; pre (normaler Text, vorformatiert) { white-space: pre }


Drucken: Eigenschaften und Werte

Unten finden Sie eine Tabelle der Style-Eigenschaften und -Werte zum Drucken -- andere Eigenschaften und Werte sind auf den folgenden Seiten aufgeführt. (Ich habe hier nur Eigenschaften und Werte aufgenommen, die im Moment von Internet Explorer und Netscape erkannt werden -- weitere werde ich hinzufügen, sobald sie unterstützt werden)

Häufig benutzte Eigenschaften und Werte für Cascading Style Sheets

Legende der Tabelle
IE3 Unterstützt von Internet Explorer 3.x
IE4 Unterstützt von Internet Explorer 4.x
N4 Unterstützt von Netscape 4.x
  Eigenschaft Beschreibung Werte Beispiel
Eigenschaften zum Drucken
IE4
page-break-before (Umbruch davor; wird nicht vererbt) fügt Seitenumbruch ein (nur für Druckzwecke) always (immer); auto (wenn nötig); left (fügt einen oder zwei Seitenumbrüche ein, bis eine leere linke Seite erreicht ist); right (fügt einen oder zwei Seitenumbrüche ein, bis eine leere rechte Seite erreicht ist) { page-break-before: always }
IE4
page-break-after (Umbruch danach; wird nicht vererbt) fügt Seitenumbruch ein (nur für Druckzwecke) always (immer); auto (wenn nötig); left (fügt einen oder zwei Seitenumbrüche ein, bis eine leere linke Seite erreicht ist); right (fügt einen oder zwei Seitenumbrüche ein, bis eine leere rechte Seite erreicht ist) { page-break-after: always }


Filter: Eigenschaften und Werte

Unten finden Sie eine Tabelle der Style-Eigenschaften und -Werte für Filterungen. (Ich habe hier nur Eigenschaften und Werte aufgenommen, die im Moment von Internet Explorer und Netscape erkannt werden -- weitere werde ich hinzufügen, sobald sie unterstützt werden)

(Beachten Sie, daß die Filterung, wie sie in IE 4.0 implementiert ist, scheinbar nur funktioniert, wenn Sie die Filtereigenschaften in einer Klasse angeben [z.B. .dropshadow] und darauf mit einem TD, DIV oder SPAN Tag mit dem passenden Attribut 'class' zugreifen. Bei manchen Filten müssen Sie auch Eigenschafen für Positionierung, Höhe und Breite angeben, um sie zum Arbeiten zu bewegen.)

Häufig benutzte Eigenschaften und Werte für Cascading Style Sheets

Legende der Tabelle
IE3 Unterstützt von Internet Explorer 3.x
IE4 Unterstützt von Internet Explorer 4.x
N4 Unterstützt von Netscape 4.x
pt = points (Punkte)
in = inches (Zoll)
cm = centimeters (Zentimeter)
px = pixels (Pixel)
em = Höhe der Schriftart des jeweiligen Elements
(die Einheit em wird noch nicht häufig unterstützt und sollte sehr vorsichtig eingesetzt werden)
  Eigenschaft Beschreibung Werte Beispiel
Filtering Properties
IE4
filter (visuelles Filtern) (wird nicht vererbt) wendet verschiedene visuelle Filter für spezielle Effekte an Generelle Form: { filter: filtername(parameter1, parameter2...) { filter: dropshadow (color=#9999FF, offx=3pt, offy=5pt) }
IE4
Alpha Legt eine gleichmäßige Transparenz fest. filter: alpha(Opacity=, FinishOpacity=, Style= StartX=, StartY=, FinishX=, FinishY=) filter: alpha(Opacity=75, FinishOpacity=15, Style=1)
IE4
Blur Erweckt den Anschein, sich schnell zu bewegen (Bewegungsunschärfe). filter: blur(Add=, Direction=, Strength=) filter: blur(Add=1, Direction=90, Strength=10)
IE4
Chroma Macht eine bestimmte Farbe transparent. filter: chroma(Color=) filter: chroma(Color=#ffff00)
IE4
DropShadow Erstellt einen Umriss des Objekts. filter: DropShadow(Color=, OffX=, OffY=, Positive=) filter: DropShadow(Color=#003399, OffX=3, OffY=3, Positive=1)
IE4
FlipH Erstellt ein horizontal gespiegeltes Bild. filter: fliph filter: fliph
IE4
FlipV Erstellt ein vertikal gespiegeltes Bild. filter: flipv filter: flipv
IE4
Glow Fügt einen Strahlenkranz um die Umrisse eines Objekts. filter: glow(Color=, Strength=) filter: glow(Color=#00FF00, Strength=30)
IE4
Grayscale Entfernt die Frabinformation aus einem Bild. filter: gray filter: gray
IE4
Invert Invertiert, d.h. dreht die Werte für Farbe, Sättigung und Helligkeit um. filter: invert filter: invert
IE4
Light Projiziert eine Lichtquelle auf ei Objekt. filter: light filter: light
IE4
Mask Erstellt aus einem Objekt eine transparente Maske. filter: mask(Color=) filter: mask (Color=#009933)
IE4
Shadow Erstellt eine versetzte ausgefüllte Silhouette. filter: shadow(Color=, Direction=) filter: shadow(Color=#9900FF, Direction=135)
IE4
Wave Erstellt eine sinusförmige Verformung der X-Achse entlang. filter: wave(Add=, Freq=, Phase=, LightStrength=, Strength=) filter: wave(Add=1, Freq=10, Phase=90, LightStrength=10, Strength=10)
IE4
XRay Zeigt nur die Ränder des Objekts an. filter: xray filter: xray
IE4
filter (Durchlässigkeits-Filter) (wird nicht vererbt) erlaubt es, sichtbare Elemente aufzudecken oder zu verstecken, wobei vordefinierte Muster verwendet werden Generelle Form: { filter: revealtrans (duration=duration, transitionshape=transitionshape)}
(Die Dauer (duration) wird angegeben in Sekunden.Millisekunden)
(Die Form der Maske (transition shape) ist definiert durch einen Wert von 1-23, wie folgt:)
MaskentypWert
Box in 0
Box out 1
Circle in 2
Circle out 3
Wipe up 4
Wipe down 5
Wipe right 6
Wipe left 7
Vertical blinds 8
Horizontal blinds 9
Checkerboard across 10
Checkerboard down 11
Random dissolve 12
Split vertical in 13
Split vertical out 14
Split horizontal in 15
Split horizontal out 16
Strips left down 17
Strips left up 18
Strips right down 19
Strips right up 20
Random bars horizontal 21
Random bars vertical 22
Random 23
{ filter: revealtrans (duration=2.0, transition=10 }
  Ich habe die Maskenypen nicht übersetzt, da ich mir nicht unter allen etwas vorstellen kann  
IE4
filter (Überblendungs-Filter) (wird nicht vererbt) lässt ein sichtbares Element ein- oder ausblenden Generelle Form: { filter: blendTrans (Duration=duration}
(Die Dauer (duration) wird angegeben in Sekunden.Millisekunden)
{ filter: blendTrans (duration=2.0, transition=10 }
[Vorherige Seite] [Naechste Seite] [Inhalt dieses Abschnitts] [Home Page]
Beispiele für Filter Bitte beachten: wenn Sie nicht IE 4.0+ verwenden, können Sie die Filtereffekte nicht sehen.
Alpha Text -- Beispielbild:
Blur Text -- Beispielbild:
Chroma Text -- Beispielbild:
Dropshadow Text -- Beispielbild:
Fliph Text -- Beispielbild:
Flipv Text -- Beispielbild:
Glow Text -- Beispielbild:
Greyscale Text -- Beispielbild:
Invert Text -- Beispielbild:
Light Text -- Beispielbild:
Mask Text -- Beispielbild:
Shadow Text -- Beispielbild:
Wave Text -- Beispielbild:
X-ray Text -- Beispielbild:

Style Sheet für die Beispiele:


	.alpha
	{		
		filter: alpha(Opacity=75,FinishOpacity=15,Style=1);
		width: auto;
		height: auto;
		position: relative;
		}

	.blur
	{		
		filter: blur(Add=1,Direction=90,Strength=10);
		width: auto;
		height: auto;
		position: relative;
		}

	.chroma
	{		
		filter: chroma(Color=#ffff00);
		width: auto;
		height: auto;
		position: relative;
		}

	.dropshadow
	{		
		line-height: 140%;
		filter: DropShadow(Color=#003399,OffX=3,OffY=3,Positive=1);
		width: auto;
		height: auto;
		position: relative;
		}

	.fliph
	{		
		filter: fliph;
		width: auto;
		height: auto;
		position: relative;
		}

	.flipv
	{		
		filter: flipv;
		width: auto;
		height: auto;
		position: relative;
		}

	.glow
	{		
		font: Bold medium;
		filter: glow(Color=#00FF00,Strength=30);
		width: auto;
		height: auto;
		position: relative;
		}

	.greyscale
	{		
		filter: gray;
		width: auto;
		height: auto;
		position: relative;
		}

	.invert
	{		
		filter: invert;
		width: auto;
		height: auto;
		position: relative;
		}

	.light
	{		
		filter: light;
		width: auto;
		height: auto;
		position: relative;
		}

	.mask
	{		
		filter: mask(Color=#009933);
		width: auto;
		height: auto;
		position: relative;
		}

	.shadow
	{		
		font: Bold x-large/140% 'Arial', 'sans-serif';
		color: #FFFF00;
		filter: shadow(Color=#9900FF,Direction=135);
		width: auto;
		height: auto;
		position: relative;
		}

	.wave
	{		
		filter: wave(Add=1,Freq=10,Phase=90,LightStrength=10,Strength=10);
		width: auto;
		height: auto;
		position: relative;
		}

	.x-ray
	{		
		filter: xray;
		width: auto;
		height: auto;
		position: relative;
		}

	DIV
	{		
		font: Bold medium/140% 'Arial', 'sans-serif';
		}
	
	


Andere Eigenschaften und Werte

Unten finden Sie andere Style-Eigenschaften und -Werte, die auf den vorherigen Seiten nicht enthalten waren. (Ich habe hier nur Eigenschaften und Werte aufgenommen, die im Moment von Internet Explorer und Netscape erkannt werden -- weitere werde ich hinzufügen, sobald sie unterstützt werden)

Häufig benutzte Eigenschaften und Werte für Cascading Style Sheets

Legende der Tabelle
IE3 Unterstützt von Internet Explorer 3.x
IE4 Unterstützt von Internet Explorer 4.x
N4 Unterstützt von Netscape 4.x
pt = points (Punkte)
in = inches (Zoll)
cm = centimeters (Zentimeter)
px = pixels (Pixel)
em = Höhe der Schriftart des jeweiligen Elements
(die Einheit em wird noch nicht häufig unterstützt und sollte sehr vorsichtig eingesetzt werden)
  Eigenschaft Beschreibung Werte Beispiel
Andere Eigenschaften
IE4
@import (wird nicht vererbt) importiert ein anderes Style Sheet in das aktuelle; muß erscheinen, bevor irgendwelche Styles definiert werden; neue Eigenschaften und Werte überschreiben die im importierten Style Sheet @import: url(url) @import url(stylesheet2.css)
IE4
cursor (wird vererbt) Gibt das Aussehen des Cursors an, wenn er im Element plaziert wird auto (Standard, vorgegeben vom Browser / dem Betriebssystem); crosshair (Fadenkreuz); default (Standard); hand (Hand); move (Verschieben); e-resize (rechts Größe ändern); ne-resize (rechts oben Größe ändern); nw-resize (links oben Größe ändern); n-resize (oben Größe ändern); se-resize (rechts unten Größe ändern); sw-resize (links unten Größe ändern); s-resize (unten Größe ändern); w-resize (links Größe ändern); text (Textcursor); wait (Sanduhr); help (Hilfecursor) { cursor: help }


Effektiver Einsatz von Fonts

Der effektive Einsatz von Style Sheets beruht zum Teil auf Grundregeln des guten Web-Designs. Sie sollten besonders daran denken, daß effektive Seiten auf jedem System, das Ihre Benutzer haben, funktionieren muss; und das ist ein großer Unterschied zu dem, was auf Ihrem (zweifellos auf dem neuesten Stand befindlichen und sorgfältig konfigurierten) System funktioniert. Lassen Sie uns einige dieser Grundlagen im Sinne des Schreibens guter Style Sheets betrachten.

Fonts

Sie werden bemerkt haben, daß in jedem meiner Beispiele, in dem eine Schriftfamilie angegeben war, mehrere Werte angegeben sind. Der Grund ist, daß nur die Fonts, die auf der Maschine des Benutzers installiert sind, angezeigt werden können; und Sie können sich nicht darauf verlassen, daß alle Benutzer die gleichen Fonts haben. Es wird natürlich immer einen Standardwert geben, auf den der Browser zurückgreifen kann, wenn es Ihnen aber auf einen bestimmten Font ankommt, dann ist es schon etwas Aufwand wert, daß das, was der Benutzer sieht, dem, was Sie wollten möglichst gut entspricht.

Zuerst müssen Sie wissen, daß Sie, quasi als letzten Ausweg, eine generelle Schriftfamilie genau wir spezielle Fonts angeben können. Die erlaubten Schriftfamilien sind:

Eine von diesen sollte eigentlich immer die letzte Option für den Wert font-family. Fonts des Typs 'Monospaced' verwenden den Platz sehr ineffizient, sind nicht einfach zu lesen und sollten deshalb sparsam eingesetz werden, z.B. für spezielle Effekte oder für Code-Beispiele. Fantasy Fonts enthalten generell spezielle Symbole, die sich von Schrift zu Schrift stark unterscheiden und sind generell nur zu dekorativen Zwecken brauchbar (obwohl die Symbole sehr nützlich sein können, wenn Sie genau wissen, daß alle Benutzer den gleichen Font haben). Kursive Fonts sind i.A. weniger gut lesbar als Druckschriften und sollten deshalb ebenfalls sparsam verwendet werden. Es bleiben 'serif' und 'sans-serif' als die Familien mit dem besten Nutzen. Einige Studien lassen den Schluss zu, daß 'sans-serif' Fonts generell ein wenig schneller als 'serif' Fonts gelesen werden können und auch mit weniger Fehlern, aber die Unterschiede sind so gering, daß die Auswahl eigentlich eine ästhetische sein muß.

Der nächste Schritt ist es, sich zu überlegen, welche Fonts wohl am wahrscheinlichsten auf den meisten Maschinen installiert sind. Für Benutzer von Windows sind das sicherlich Arial, Courier und Times New Roman, aber Times New Roman ist ohnehin der Standardfont der meisten Browser. Zusätzlich fügt das Installieren von Internet Explorer auch noch die folgenden Schriften in Windows ein:

(Dank an Jim Tom Polk für das Zusammenstellen dieser Liste.)

Microsoft hat noch einige andere Fonts "für das Web", so wie Trebuchet MS und Georgia in der Site Builders Workshop Gallery verfügbar gemacht, und ich nehme an, daß diese Teil der Standardinstallation in zukünfigen Versionen werden. Darüber hinaus kann die Ausstattung mit Fonts stark variieren, abhängig davon, welche Software der Benutzer installiert hat, man kann sich also eigentlich nur auf generelle Font-Familien verlassen. Bei Benutzern von Betriebssystemen ausser Windows sind generelle Font-Familien wirklich das einzige, auf das man sich verlassen kann.

Die neue Eigenschaft @font-face (wenn denn unterstützt) oder Netscape's Alternative, bieten Ihnen die Möglichkeit, den ausgewählten Font denjenigen Benutzern zugänglich zu machen, die ihn nicht installiert haben. Zwei Vorsichtsmaßnahmen sind aber nötig: 1) der Font sollte plattformübergreifend funktionieren, was Microsoft versucht sicherzustellen; 2) es könnte den Benutzer vielleicht nicht gefallen, ein Dutzend neuer Fonts auf ihrem System zu haben, und ein ganzes Dutzend unterschiedlicher Fonts zu verwenden, ist ohnehin keine gute Idee (siehe auch im nächsten Absatz).

Eine letzte Warnung zu Fonts: wie bei den ersten großen Textverarbeitungen ist es auch bei Style Sheets so, daß Sie vielleicht versuchen, für jedes Element die Schriften zu ändern, seinfach nur weil es so simpel ist. Das ist keine gute Idee im Sinne der Lesbarkeit und der effektiven Kommunikation; häufige Änderungen der Schriften verlangsamen das Lesen und erhöhen die Wahrscheinlichkeit, sich zu 'verlesen'. Legen Sie sich auf höchstens zwei oder drei Fonts pro Seite fest und wechseln Sie nicht von Seite zu Seite die Schriften solange es keinen guten Grund gibt. Kleine Änderungen der Schriftgröße und, in geringerem Umfang, der Text- und der Hintergrundfarbe sind bessere Methoden, unterschiedliche Arten und Tiefen von Informationen darzustellen.



Effektiver Einsatz von Farben

Die Regeln für den effektiven Einsatz von Farben in Style Sheets sind die gleichen wie die für Webseiten im Allgemeinen: für eine konsistente Darstellung sollten Sie die 216-Farben safety palette einsetzen, wie ich es im HTML Style Guide erkläre. Sie sollten es vermeiden, die Farbe jedes Selectors zu ändern, nur weil es doch so einfach ist. Farbe ist ein starkes visuelles Signal, um unterschiedliche Arten von Informationen zu markieren, aber nur dann, wenn sie vorsichtig und einheitlich eingesetzt wird.

Darüber hinaus sollten Sie sorgfältig sein beim Einsatz von Hintergrund- und Vordergrundfarbe, wenn Sie glauben, daß Benutzer die Seiten aus einem Browser heraus drucken wollen. Heller Text auf dunklem Hintergrund sieht oft gut auf der Anzeige aus, wird aber auf einem Schwarz-Weiß-Drucker vielleicht als schwarzes Rechteck gedruckt.



Spezielle Effekte: Overlays

1

(Es gibt keine Bilder in der obigen Abbildung. In der style sheet gallery auf der Website von Microsoft finden Sie noch mehr Beispiele.)

Dummerweise wird es hier kompliziert mit Style Sheets, teilweise, da CSS immer noch eine junge Technologie ist und die Implementierung der CSS-Unterstützung nirgends komplett oder standardisiert ist. IE 3.0 behandelte Overlays Streng mit Hilfe der Eigenschaft 'Margin' von Boxen. Später haben sich Microsoft und Netscape darauf geeinigt, daß Overlays durch Positionieren erreicht werden sollten; sie haben sich aber (noch) nicht darauf geeinigt, wie Positionieren genau definiert sein soll. (Positionieren in den drei Browsern wird detaillierter auf den folgenden Seiten behandelt.) Das bedeutet, daß Sie, wenn Sie Positionieren verwenden wollen, separate Style Sheets für jeden Browser schreiben müssen und ein JavaScript einsetzen, um die Seite zu zwingen, je nach Browser des Benutzers das jeweils passende einzusetzen.

Für Overlays müssen Sie ohnehin Scripting einsetzen, da Browser ohne CSS-Unterstützung einfach beide Textblöcke nacheinander darstellen würden, was besonders bei schattiertem Text problematisch ist, da das Ergebnis eine einfache Wiederholung des Absatzes wäre. Die Lösung ist es, ein JavaScript einzusetzen, um den Text mit Overlay nur dann auszugeben, wenn der Browser CSS unterstützt, und sicherzustellen, daß die Seite auch ohne das Overlay immer noch verständlich, wenn auch nicht vollständig, ist. Wir werden uns bald ein Script ansehen, das genau diese Aufgaben übernimmt.

Einige andere Anmerkungen zu Effekten, die Overlays von einem Textblock über einen anderen verwenden:



Positionieren in Netscape 4.0x

Beachten Sie bitte, daß die Methoden zum Positionieren für Netscape und Internet Explorer, die auf dieser und den folgenden Seiten beschrieben werden, nicht die einzigen Wege zum Erstellen von Overlays sind. Der Einsatz der beschriebenen Methoden erlaubt es Ihnen aber, eine einzige Seite zu schreiben, die mit allen drei Browsern funktioniert, vorausgesetzt, Sie benutzen ein JavaScript, um das für den jeweiligen Browser passende Style Sheet zu laden und um die Vordergrundebene zu schreiben (diese Scripts werden nach der Erklärung der Positionierung vorgestellt).

Das Erstellen von Overlays in Netscape 4.0(x) erfordert den Einsatz von relativer und absoluter Positionierung (positioning), Randeinstellungen (margins) und Ebenen (layers).

Der Hintergrundteil des Overlays sollte in einem Element (oder einer Klasse) stehen, das relativ positioniert ist (relativ zum Verlauf des Seiteninhalts):

	.hugeding
	{		
		font: 80pt 'Wingdings', 'fantasy';
		color: #FFFF99;
		position: relative;
		}
	

Der Vordergrundteil des Overlays sollte in einem Element (oder einer Klasse) stehen, das absolutel positioniert ist (innerhalb des Hintergrundelements), obwohl die Positionierung auch im Layer-Element erfolgen kann (siehe unten):

	.shadow3
	{		
		font: Bold x-large 'sans-serif';
		color: #339999;
		position: absolute;
		}
	

Sie werden auch einige spezielle layer-Angaben im Style Sheet brauchen. Die Layer sind sehr wichtig, und Overlays in Netscape funktionieren nicht ohne sie. Hier sind die Layer-Angaben für das Overlay-Beispiel auf der vorherigen Seite:

	#layer1
	{		
		position: relative;
		}

	#layer3
	{		
		position: absolute;
		left: 40pt;
		top: 30pt;
		}

	

Beachten Sie, daß die Layer mit größerer Nummer über solchen mit niedriger Nummer dargestellt werden. Elemente erscheinen als Standard im Layer mit der niedrigsten Nummer. Der zweite Layer hätte auch layer2 sein können, aber ich hatte bereits einen layer2 für einen anderen Zweck im Style Sheet. Beachten Sie auch die Postitionierung der Layer für Hinter- und Vordergrund und daß die Position des Vordergrundelements mit den Eigenschaften top und left eingestellt wird; die Werte sind am besten durch Testen herauszufinden. Sie können auch Positionieren für das Element selbst angeben, indem Sie die Eigenschaften margin-top und margin-left einsetzen, aber die Ergebnisse waren weniger gleichmässig. Wenn Sie diese Randpositionen im Element einsetzen, dann werden sie zusätzlich zu den Werten für 'top' und 'left' im Layer angewandt.

Der Inhalt, der mit einem Overlay versehen werden soll, sollte innerhalb des Hintegrundelements stehen, durch Verwenden des <span>-Tags:

	<p class=hugeding>
	1<br>
	<span class=shadow3 id=layer3>
	Name
	</span>
	</p>
	
Achten Sie auf das Attribut class und auch das Atrribut id; diese geben den Style des Vordergrundelements und den Layer an.
Zusätzliche Bemerkungen: die Technik für Overlays mit Hilfe von layer ist eine Erfindung von Netscape und ist nicht Teil der CSS1 Spezifikationen; ich glaube, daß das World Wide Web Consortium offiziell die Ablehnung der Layer-Methode verkündet hat und den Einsatz der Eigenschaft Z-index empfiehlt (wir werden diese Methode auf der folgenden Seite über IE 4.0 ansehen). Ich habe keinen Hinweis darauf, daß Netscape plant, ihren Ansatz zur Positionierung zu ändern, aber ich werde Sie auf dem laufenden halten....


Positionieren in Internet Explorer 4.0x

Beachten Sie bitte, daß die Methoden zum Positionieren für Netscape und Internet Explorer, die auf dieser und den folgenden Seiten beschrieben werden, nicht die einzigen Wege zum Erstellen von Overlays sind. Der Einsatz der beschriebenen Methoden erlaubt es Ihnen aber, eine einzige Seite zu schreiben, die mit allen drei Browsern funktioniert, vorausgesetzt, Sie benutzen ein JavaScript, um das für den jeweiligen Browser passende Style Sheet zu laden und um die Vordergrundebene zu schreiben (diese Scripts werden nach der Erklärung der Positionierung vorgestellt).

Das Erstellen von Overlays in IE 4.0(x) erfordert den Einsatz von relativer und absoluter Positionierung, margins und Layern.

Wie bei Netscape 4.0 sollte der Hintergrundteil des Overlays in einem Element (oder einer Klasse) stehen, das relativ (zum Inhalt der Seite) positioniert ist:

	.hugeding
	{		
		font: 80pt 'Wingdings', 'fantasy';
		color: #FFFF99;
		position: relative;
		}
	

Der Vordergrundteil des Overlays sollte in einem Element (oder einer Klasse) stehen, das absolut psoitioniert ist (innerhalb des Hintergrundelements), aber da es positioniert wird, wollen Sie vielleicht eine spezielle Klasse für diesen Zweck erstellen:

	.shadow3
	{		
		font: Bold x-large 'sans-serif';
		color: #339999;
		position: absolute;
		left: 50pt;
		top: 35pt;
		z-index: 3;
		}
	

Wie Sie sehen, funktioniert hier das Positionieren durch Einsatz der Eigenschaften left und top; die Werte ermitteln Sie am besten durch Ausprobieren. Beachten Sie auch die Eigenschaft Z-index. Wie bei den Layern in Netscape werden auch hier die Elements mit größeren Werten von Z-index über Elementen mit niedrigern Werten dargestellt (der Standardwert ist 1).

Der Inhalt, der mit einem Overlay versehen werden soll, sollte innerhalb des Hintergrundelements stehen, indem Sie das Tag <span> verwenden:

	<p class=hugeding>
	1<br>
	<span class=shadow3 id=layer3>
	Name
	</span>
	</p>
	
Beachten Sie das Attribut class; es gibt den Style für das Vordergrundelement an. Das Atrribut id=layer3 ist für Netscape und IE wird es ignorieren, wenn kein #layer3 im Style Sheets für IE vorhanden ist.


Positionieren in Internet Explorer 3.0x

Beachten Sie bitte, daß die Methoden zum Positionieren für Netscape und Internet Explorer, die auf dieser und den folgenden Seiten beschrieben werden, nicht die einzigen Wege zum Erstellen von Overlays sind. Der Einsatz der beschriebenen Methoden erlaubt es Ihnen aber, eine einzige Seite zu schreiben, die mit allen drei Browsern funktioniert, vorausgesetzt, Sie benutzen ein JavaScript, um das für den jeweiligen Browser passende Style Sheet zu laden und um die Vordergrundebene zu schreiben (diese Scripts werden nach der Erklärung der Positionierung vorgestellt).

Das Erstellen von Overlays in IE 3.0(x) erfordert eine etwas andere Strategie als für IE 4.0 oder Netscape 4.0, weil IE 3.0 kein Positionieren in der gleichen Art kennt. Stattdessen werden Sie die Eigenschaft margin von Box nutzen müssen (margin-top, margin-left usw.).

Der Hintergrundteil des Overlays kann ein beliebiges Element oder eine Klasse sein:

	P.hugeding
	{		
		font: 80pt 'Wingdings', 'fantasy';
		color: #FFFF99;
		}
	
(Beachten Sie: wenn das verwendete Element eine Hintergrundfarbe hat, müssen Sie ein anderes Element für den Vordergrund verwenden (eines ohne Hintergrundfarbe) oder die Farbe wird das Hintergrundelement komplett verdecken.

Von der Überlegung zur Hintergrundfarbe abgesehen kann der Vordergrundteil des Overlays jedes Element sein, aber da es positioniert wird, wollen Sie vielleicht eine spezielle Klasse für diesen Zweck erstellen:

	.shadow3
	{		
		font-family: "'Trebuchet MS', 'Arial', 'Sans-Serif'";
		font-weight: bold;
		font-size: 30pt;
		color: #336666;
		text-align: left;
		margin-top: -70pt;
		margin-left: 38pt;
		}
	

Die Positionierung verwendet hier die Eigenschaften margin-left und margin-top; die Werte ermittelt man am besten durch Ausprobieren.

Der Inhalt, der mit einem Overlay versehen werden soll, sollte nach dem Hintergrundelement angeordnet werden, in dem Sie das <p>-Tag mit der passenden Klasse verwenden:

	<p class=hugeding>
	1
	</p>
	<p class=shadow3>
	Name
	</p>
	
	
Beachten Sie das Attribut class.
Zusätzliche Bemerkungen:
  • die Benutzung des Tags <span> für das Vordergrundelement hat bei mir nicht zu einheitlichen Resultaten geführt; deshalb empfehle ich einen separaten Absatz nach dem Hintergrundelement
  • durch das Fehlen von echtem Positionieren IE 3.0 funktionieren Overlays nur dann, wenn Der Vordergrundtext ganz in eine Zeile passt; um das sicherzustellen, müssen Sie sehr kurze Texte verwenden oder das Overlay in eine Tabelle mit ausreichender festgelegter Breite schreiben (eine Vorgehensweise, die ich nicht empfehle, da sie dazu führt, daß einige Benutzer horizontal scrollen müssen, die mit niedriger Auflösung arbeiten)


Scripting von Overlays

Overlays, die mit CSS erstellt wurden, sehen i.A. in Browsern, die keine Style Sheets unterstützen, ziemlich seltsam, wenn nicht verwirrend aus, deshalb ist es eine gute Idee, ein Script zu benutzen, um das Vordergrundelement nur zu schreiben, wenn es der Browser unterstützt. Hier ist ein JavaScript, das diesen Job für Netscape 4.0 und IE 4.0 übernimmt:

	<script language="JavaScript">
	//dieses Script schreibt den Vodergrundlayer eines Overlays,
	//falls der Benutzer Netscape 4.0+ oder IE 4.0+ hat
	<!--
	var browser=navigator.appName;
	var version=navigator.appVersion
	var ver1=version.substring(0,1)

	if (((browser == "Netscape") && (ver1 >= 4)) | 
	((browser == "Microsoft Internet Explorer") && (ver1 >= 4))) {
	document.write("<span class=shadow3 id=layer3>Hier den Text für das Overlay einsetzen</span>")
	}
	//-->
	</script>
	

Da Overlays in IE 3.0 am besten in zwei separaten Elementen ausgeführt werden (dagegen in Netscape und IE 4.0 das Vordergrund in einem <span> innherhalb des Hintergrundelements), brauchen Sie ein separates Script, um den Vordergrund für IE 3.0 zu schreiben; hier ist eins:

	<script language="JavaScript">
	//this script writes the foreground layer of an overlay for IE 3.0x
	<!--
	 var browser=navigator.appName;
	 var version=navigator.appVersion
	 var ver2=version.lastIndexOf("MSIE")
	 var ver3=version.substring(ver2+5,ver2+6)
	 
	 if ((browser == "Microsoft Internet Explorer") && (ver3 == 3)){
	  document.write('<p class=shadow3>Overlay text here</p>')
	 }
	// -->
	</script>
	

Hier sehen Sie jetzt den kompletten Code für das Beispiel zu Overlays, das wir vor einigen Seiten schon mal hatten, unten nochmal angezeigt:

1

	<p class=hugeding>1 <br>
	<script language="JavaScript">
	<!--
	var browser=navigator.appName;
	var version=navigator.appVersion
	var ver1=version.substring(0,1)

	if (((browser == "Netscape") && (ver1 >= 4)) |
	((browser == "Microsoft Internet Explorer") && (ver1 >= 4))) {
	document.write("<span class=shadow3 id=layer3>Name</span>")
	}
	//-->
	</script> 
	</p>
	<script language="JavaScript">
	<!--
	 var browser=navigator.appName;
	 var version=navigator.appVersion
	 var ver2=version.lastIndexOf("MSIE")
	 var ver3=version.substring(ver2+5,ver2+6)
	 
	 if ((browser == "Microsoft Internet Explorer") && (ver3 == 3)){
	  document.write('<p class=shadow3>Name</p>')
	 }
	// -->
	</script>

	


Die Links zu Style Sheet scripten

Zusätzlich zu Overlays werden Sie auch ein Script brauchen, um die Links zu den einzelnen Style Sheets zu setzen. So sieht eine erweiterte und modifizierte Version des Scripts zum Ausführen von Overlays aus:

	<script language="JavaScript">
	// dieses Script ermittelt, ob der Browser des Benutzers
	// IE3, IE4 oder Netscape 4 ist und lädt für jeden
	// ein anderes Style Sheets, bei anderen Browsern
	// tut es nichts
	<!--
	 var browser=navigator.appName;
	 var version=navigator.appVersion
	 var ver1=version.substring(0,1)
	 var ver2=version.lastIndexOf("MSIE")
	 var ver3=version.substring(ver2+5,ver2+6)
	
	 function itsNetscape() {
	  document.write('<LINK REL=StyleSheet HREF="styles/nn4.css" TYPE="text/css">')
	 }	
	 function itsMsie() {
	  if (browser == "Microsoft Internet Explorer")
	  ieVersion()
	 }
	 function ieVersion(){
	  if (ver1 >= 4)
	   document.write('<LINK REL=StyleSheet HREF="styles/ie4.css" TYPE="text/css">')
	  if (ver3 == 3)
	   document.write('<LINK REL=StyleSheet HREF="styles/ie33.css" TYPE="text/css">')
	 }
	 if ((browser == "Netscape") && (ver1 >= 4)){
	  itsNetscape()
	 }
	 else{
	  itsMsie()
	 }
	// -->
	</script>

	
(an dieser Stelle dankt mir Robert Crooks, daß ich ihm dabei geholfen habe, einige Details dieses Scripts zu verfeinern; ich spare mir das jetzt ;-) )

Bemerkung: Sie müssen die kursiven Teile des Scripts durch die passenden Pfadangaben und Dateinamen für Ihre Style Sheets ersetzen.



Einheiten für Werte von Eigenschaften

In der Tabelle von Eigenschaften und Werten und in den Beispielen auf verschiedenen Seiten werden Sie festgestellt haben, daß die Werte für viele Attributes in einer von mehreren Einheiten angegeben sind, gewöhnlich:

In den meisten Fällen macht es keinen großen Unterschied, welchen Einheit Sie benutzen, solange sie sich damit auskennen (Autoren in den USA bevorzugen z.B. wohl inches, während die in den meisten anderen Ländern Zentimetern den Vorrang geben werden; die meisten von uns sind es gewohnt, Schriftgrößen in Punkt anzugeben, obwohl scheinbar nur wenige wissen, was ein Punkt in diesem Fall ist -- 1/72 inch). Eine Sache sollte man aber bemerken. Im Gegensatz zu den ersten drei Einheiten geben Pixel keine absolute Entfernung an; ein Pixel ist vielmehr die Einheit der Anzeigehöhe bzw. -breite, die von der eingestellten Auflösung der Anzeige abhängt. Die Einstellungen der Auflösung unterscheiden sich stark, viele Benutzer haben 640x480 Pixel, während durch die stärkere Verbreitung von 17" oder größeren Monitoren und besseren Grafikkarten Auflösungen von 1024x768 oder mehr nicht mehr ungewöhnlich sind. Aus diesem Grund sind Pixelwerte generell nicht zu empfehlen. Pixel können aber in manchen Fällen doch das passende Mittel sein, wie z.B. beim Overlay von Text über ein Bild, da Bildgrößen in Pixeln angegeben werden. Es ist aber trotzdem wichtig, Ihre Seiten bei unterschiedlichen Auflösungen zu testen.



Weitergehendes

Wenn Sie ein Benutzer von Allaire HomeSite sind, sollten Sie sich den Abschnitt über Style Sheets in der Anleitung zu HomeSite ansehen. Es gibt auch einige nützliche Dokumente und Quellen zu Cascading Style Sheets im World Wide Web:

Dokumente des World Wide Web Consortium (englisch)

Documente von Microsoft über Cascading Style Sheets (englisch)

Aktuelle Unterstützung in Internet Explorer (englisch)

The Web Design Group's CSS Help file for Windows 95 (englisch)

Microsoft's Gallery of Style Sheet Examples (englisch)

Style Sheet Support in Netscape 4.0 (englisch)



Beispiel für ein Style Sheet

Unten sehen Sie den kompletten Inhalt der Dateien stylesheets.css und n_stylesheets.css (für Netscape), die für diesen Abschnitt verwendet werden. Ich habe sie als Besipiele eingebaut, die Sie studieren und mit denen Sie experimentieren können, wenn Sie Ihre eigenen Style Sheets entwickeln.

Version für Internet Explorer 4.0
	.StyleSheetHiddenPlaceHolder { display: none; }

	H1
	{		
		font-family: 'Trebuchet MS', 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: xx-large;
		color: #660066;
		text-align: Left;
		position: relative;
		}

	H2
	{		
		font-family: 'Trebuchet MS', 'Arial', 'Helvitica';
		font-weight: bold;
		font-size: 18pt;
		color: #660066;
		text-align: Center;
		position: relative;
		}

	H3
	{		
		font-family: 'Trebuchet MS', 'Arial', 'Helvitica';
		font-weight: bold;
		font-size: 16pt;
		color: #660066;
		position: relative;
		}

	H4
	{		
		font-family: 'Trebuchet MS', 'Arial', 'Helvitica';
		font-weight: bold;
		font-size: 11pt;
		color: #660066;
		background: transparent;
		width: auto;
		height: auto;
		position: relative;
		left: auto;
		top: auto;
		}

	H5
	{		
		font-family: 'Trebuchet MS', 'Arial', 'Helvitica';
		font-weight: bold;
		font-size: 10pt;
		color: #660066;
		background: #FFFFCC;
		position: relative;
		}

	P
	{		
		font-family: 'Trebuchet MS', 'Arial', 'Helvitica';
		font-weight: bold;
		font-size: 11pt;
		color: #000066;
		position: relative;
		margin-left: 1cm;
		}

	BLOCKQUOTE
	{		
		font-family: 'Trebuchet MS', 'Arial', 'Helvitica';
		font-weight: bold;
		font-size: 11pt;
		color: #000066;
		position: relative;
		margin-left: 2cm;
		}

	PRE
	{		
		font-family: 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: 10pt;
		color: #990000;
		text-align: left;
		margin-left: 1cm;
		position: relative;
		}

	I
	{		
		color: #000099;
		position: relative;
		}

	B
	{		
		color: #990000;
		position: relative;
		}

	UL
	{		
		position: relative;
		margin-left: 1.5cm;
		}

	OL
	{		
		position: relative;
		margin-left: 1.5cm;
		}

	LI
	{		
		font-family: 'Trebuchet MS', 'Arial', 'Helvitica';
		font-weight: bold;
		font-size: 11pt;
		color: #000066;
		margin: .4cm;
		position: relative;
		}

	TABLE
	{		
		font-family: 'Trebuchet MS', 'Arial', 'Helvitica';
		font-weight: bold;
		font-size: 11pt;
		color: #006600;
		position: relative;
		}

	TR
	{		
		font-family: 'Trebuchet MS', 'Arial', 'Helvitica';
		font-weight: bold;
		font-size: 11pt;
		color: #000066;
		position: relative;
		}

	TD
	{		
		font-family: 'Trebuchet MS', 'Arial', 'Helvitica';
		font-weight: bold;
		font-size: 11pt;
		color: #000066;
		position: relative;
		}

	TH
	{		
		font-family: 'Trebuchet MS', 'Arial', 'Helvitica';
		font-weight: bold;
		font-size: 12pt;
		color: #990000;
		background: #CCCC99;
		position: relative;
		}

	.blue
	{		
		font-family: 'Trebuchet MS', 'Arial', 'Helvitica';
		font-weight: bold;
		font-size: 12pt;
		color: #990000;
		background: #CCFFFF;
		position: relative;
		}

	CAPTION
	{		
		font-family: 'Trebuchet MS', 'Arial', 'Helvitica';
		font-weight: bold;
		font-size: 10pt;
		color: #000066;
		margin: .1in;
		position: relative;
		}

	A:active
	{		
		color: #FF0000;
		}

	DIV
	{		
		position: relative;
		}

	.note
	{		
		font-size: 10pt;
		color: #006600;
		background: #FFFFFF;
		position: relative;
		padding: 2pt 2pt;
		border-width: thin;
		border-style: groove;
		}

	.float
	{		
		width: 40%;
		text-align: left;
		float: right;
		font-size: 10pt;
		color: #006600;
		background: #FFFFFF;
		position: relative;
		padding: 4pt 4pt;
		border-width: thin;
		border-style: groove;
		}

	.small
	{		
		font-family: 'Arial', 'Sans-Serif';
		font-weight: normal;
		font-size: 8pt;
		text-align: center;
		}

	.red
	{		
		font-family: 'Arial', 'Sans-Serif';
		font-weight: normal;
		font-size: 8pt;
		color: #FF0000;
		text-align: center;
		position: relative;
		}

	.redleft
	{		
		font-family: 'Arial', 'Sans-Serif';
		font-size: 10pt;
		color: #990000;
		text-align: left;
		position: relative;
		}

	.indent
	{		
		margin-left: 1cm;
		position: relative;
		}

	.noindent
	{
		margin-left: 0;
		position: relative;
		}

	.large
	{		
		font-family: 'Arial', 'Sans-Serif';
		font-style: italic;
		font-weight: bold;
		font-size: 16pt;
		color: #660066;
		text-align: left;
		position: relative;
		}

	.shadow
	{		
		font-family: 'Trebuchet MS', 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: xx-large;
		color: #9966FF;
		text-align: left;
		height: 0;
		position: absolute;
		left: -1pt;
		top: -1pt;
		}

	.first
	{		
		border-top-width: thin;
		border-left-width: thin;
		border-left-color: #66CC99;
		border-top-color: #66CC99;
		border-top-style: outset;
		border-left-style: inset;
		padding-top: 2pt;
		padding-left: 2pt;
		}

	.hugeding
	{		
		font: 80pt 'Wingdings', 'fantasy';
		color: #FFFF99;
		position: relative;
		}

	.shadow3
	{		
		font: Bold x-large 'sans-serif';
		color: #339999;
		position: absolute;
		left: 50pt;
		top: 35pt;
		z-index: 3;
		}
	
Version für Internet Explorer 3.0
	.StyleSheetHiddenPlaceHolder { display: none; }

	H1
	{		
		font-family: 'Trebuchet MS', 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: 30pt;
		color: #660066;
		}

	H2
	{		
		font-family: 'Trebuchet MS', 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: x-large;
		color: #660066;
		}

	H3
	{		
		font-family: 'Trebuchet MS', 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: 12pt;
		color: #660066;
		background: #FFFFCC;
		}

	H4
	{		
		font-family: 'Trebuchet MS', 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: 11pt;
		color: #660066;
		background: #FFFFCC;
		}

	H5
	{		
		font-family: 'Trebuchet MS', 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: 10pt;
		color: #660066;
		background: #FFFFCC;
		}

	P
	{		
		font-family: 'Trebuchet MS', 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: 11pt;
		color: #000066;
		margin-left: 1cm;
		}

	BLOCKQUOTE
	{		
		font-family: "'Trebuchet MS', 'Arial', 'Sans-Serif'";
		font-weight: bold;
		font-size: 11pt;
		color: #000066;
		margin-left: 2cm;
		}

	PRE
	{		
		font-family: 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: 12pt;
		color: #990000;
		}

	XMP
	{		
		font-family: 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: 10pt;
		color: #990000;
		text-align: left;
		}

	I
	{		
		color: #000099;
		}

	B
	{		
		color: #990000;
		}

	UL
	{		
		margin-left: 1.5cm;
		}

	OL
	{		
		margin-left: 1.5cm;
		}

	LI
	{		
		font-family: 'Trebuchet MS', 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: 11pt;
		color: #000066;
		}

	TD
	{		
		font-family: 'Trebuchet MS', 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: 11pt;
		color: #000066;
		}

	TH
	{		
		font-family: 'Trebuchet MS', 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: 12pt;
		color: #990000;
		background: #CCCC99;
		}

	TH.blue
	{		
		font-family: 'Trebuchet MS', 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: 12pt;
		color: #990000;
		background: #CCFFFF;
		}

	CAPTION
	{		
		font-family: 'Trebuchet MS', 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: 10pt;
		color: #000066;
		margin: .1in;
		}

	A:active
	{		
		color: #FF0000;
		}

	.note
	{		
		font-size: 10pt;
		color: #006600;
		background: #FFFFFF;
		}
	.small
	{		
		font-family: 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: 8pt;
		text-align: center;
		}

	.red
	{		
		font-family: 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: 8pt;
		color: #FF0000;
		text-align: center;
		}

	.redleft
	{		
		font-family: 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: 10pt;
		color: #990000;
		text-align: left;
		}

	.indent
	{ margin-left: 1cm }

	.noindent
	{
		margin-left: 0;
		position: relative;
		}

	.large
	{		
		font-family: 'Arial', 'Sans-Serif';
		font-style: italic;
		font-weight: bold;
		font-size: 16pt;
		color: #660066;
		text-align: left;
		margin-left: 1cm;
		}

	.shadow
	{		
		font-family: "'Trebuchet MS', 'Arial', 'Sans-Serif'";
		font-weight: bold;
		font-size: 30pt;
		color: #9999FF;
		text-align: left;
		margin-top: -48pt;
		margin-left: -1pt;
		}

	P.hugeding
	{		
		font: 80pt 'Wingdings', 'fantasy';
		color: #FFFF99;
		}

	.shadow3
	{		
		font-family: "'Trebuchet MS', 'Arial', 'Sans-Serif'";
		font-weight: bold;
		font-size: 30pt;
		color: #336666;
		text-align: left;
		margin-top: -70pt;
		margin-left: 38pt;
		}
	
Version für Netscape Communicator 4.0


	.StyleSheetHiddenPlaceHolder { display: none; }

	H1
	{		
		font-family: 'Trebuchet MS', 'Arial', 'Sans-Serif';
		font-style: bold;
		font-weight: bold;
		font-size: xx-large;
		color: #666666;
		text-align: left;
		position: relative;
		}

	H2
	{		
		font-family: 'Trebuchet MS', 'Comic Sans MS', 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: x-large;
		color: #660066;
		}

	H3
	{		
		font-family: 'Trebuchet MS', 'Comic Sans MS', 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: large;
		color: #660066;
		}

	H4
	{		
		font-family: 'Trebuchet MS', 'Comic Sans MS', 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: medium;
		color: #660066;
		}

	H5
	{		
		font-family: 'Trebuchet MS', 'Comic Sans MS', 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: medium;
		color: #660066;
		}

	P
	{		
		font-family: 'Trebuchet MS', 'Comic Sans MS', 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: 11pt;
		color: #000066;
		margin-left: 1cm;
		}

	BLOCKQUOTE
	{		
		font-family: 'Trebuchet MS', 'Comic Sans MS', 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: 11pt;
		color: #000066;
		margin-left: 2cm;
		position: relative;
		}

	PRE
	{		
		font-family: 'Arial', 'Sans-Serif';
		font-weight: normal;
		font-size: 10pt;
		color: #990000;
		text-align: left;
		margin-left: 1cm;
		position: relative;
		}

	EM
	{		
		color: #000099;
		}

	STRONG
	{		
		color: #990000;
		}

	UL
	{		
		margin-left: 1.5cm;
		}

	OL
	{		
		margin-left: 1.5cm;
		}

	LI
	{		
		font-family: 'Trebuchet MS', 'Comic Sans MS', 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: 11pt;
		color: #000066;
		}

	TABLE
	{		
		font-family: 'Trebuchet MS', 'Comic Sans MS', 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: 11pt;
		color: #006600;
		}

	TR
	{		
		font-family: 'Trebuchet MS', 'Comic Sans MS', 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: 11pt;
		color: #000066;
		}

	TD
	{		
		font-family: 'Trebuchet MS', 'Comic Sans MS', 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: 11pt;
		color: #000066;
		}

	TH
	{		
		font-family: 'Trebuchet MS', 'Comic Sans MS', 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: large;
		color: #990000;
		background: #CCCC99;
		}

	CAPTION
	{		
		font-family: 'Trebuchet MS', 'Comic Sans MS', 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: small;
		color: #000066;
		margin: .1in;
		}

	A:link
	{		
		font-family: 'Trebuchet MS', 'Comic Sans MS', 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: 11pt;
		color: #0000FF;
		}

	A:visited
	{		
		font-family: 'Trebuchet MS', 'Comic Sans MS', 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: 11pt;
		color: #990099;
		}

	A:active
	{		
		font-family: 'Trebuchet MS', 'Comic Sans MS', 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: 11pt;
		color: #FF0000;
		}
	.small
	{		
		font-family: 'Trebuchet MS', 'Verdana', 'Arial', 'Sans-Serif';
		font-weight: normal;
		font-size: small;
		text-align: center;
		}

	.red
	{		
		font-family: 'Trebuchet MS', 'Verdana', 'Arial', 'Sans-Serif';
		font-weight: normal;
		font-size: small;
		color: #FF0000;
		text-align: center;
		}

	.redleft
	{		
		font-family: 'Trebuchet MS', 'Verdana', 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: 11pt;
		color: #990000;
		text-align: left;
		}

	.indent
	{		
		margin-left: 1cm;
		}

	.noindent
	{		
		margin-left: 0;
		position: relative;
		}

	.large
	{		
		font-family: 'Trebuchet MS', 'Arial', 'sans serif';
		font-style: bold;
		font-weight: bold;
		font-size: 18pt;
		color: #999999;
		text-align: left;
		margin-top: .4cm;
		margin-left: .02cm;
		}

	.blue
	{		
		font-family: 'Trebuchet MS', 'Comic Sans MS', 'Arial', 'Sans-Serif';
		font-weight: bold;
		color: #990000;
		background: #CCFFFF;
		}


	.note
	{		
		font-size: small;
		color: #006600;
		background: #FFFFFF;
		border: thin #006600 ridge;
		}

	.first
	{		
		padding-top: 2pt;
		padding-left: 2pt;
		border-top-width: thin;
		border-left-width: thin;
		border-left-color: #66CC99;
		border-top-color: #66CC99;
		border-top-style: outset;
		border-left-style: inset;
		}

	.hugeding
	{		
		font: 80pt 'Wingdings', 'fantasy';
		color: #FFFF99;
		position: relative;
		}

	.shadow
	{		
		font-family: 'Trebuchet MS', 'Arial', 'Sans-Serif';
		font-weight: bold;
		font-size: xx-large;
		color: #9966FF;
		text-align: left;
		}

	.shadow3
	{		
		font: Bold x-large 'Trebuchet MS', 'sans-serif';
		color: #339999;
		position: absolute;
		}
		
	#layer1
	{		
		position: relative;
		}

	#layer2
	{		
		position: absolute;
		left: -2pt;
		top: -2pt;
		}

	#layer3
	{		
		position: absolute;
		left: 40pt;
		top: 30pt;
		}
	


Style Sheet: Übung

Es folgt eine einfache Übung, die Sie durch die ersten Experimente mit Style Sheets führt. Für diese Übung brauchen Sie eine HTML-Datei und eine CSS-Datei. Um diese zu erstellen, brauchen Sie einen Text-basierten HTML-Editor wie HomeSite oder einen Texteditor wie z.B. Notepad.

Erstellen der HTML-Datei

Bei der Arbeit mit Style Sheets ist es hilfreich, eine Testdatei zu haben, die Beispiele aller Styles anzeigt, die Sie benutzen. Der Code untern erstellt eine Seite zum Start; Sie können zusätzliche Elemente für andere Tags und Klassen einfügen, wenn Sie Styles für sie definieren. Um die Datei zu erstellen, starten Sie Ihren HTML- oder Texteditor und öffnen Sie eine neue Datei, kopieren Sie den Code unten und fügen Ihn in die leere Datei ein; speichern Sie dann die Datei als css_test.html:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">

<html>
<head>
<title>CSS Test</title>
<!-- Link zum Style Sheet;
wenn Sie unterschiedliche Beispiel-Style Sheets
unter anderen Namen testen wollen, ändern Sie den Wert href
im Tag, um auf das neue Style Sheet zu verweisen -->
<link rel="stylesheet" type="text/css" href="sample1.css">
</head>
<body bgcolor="White">
<!-- Unten stehen Elemente, um die Funktionen
im Style Sheet sample1.css zu demonstrieren. Wenn Sie Ihre eigenen
Style Sheets mit mehr Tags und Klassen erstellen, können Sie
weitere Elemente hinzufügen, um Beispiele Ihrer Styles zu sehen. -->
<h1>Dies ist eine H1-Überschrift</h1>
<p class="first">
Das ist ein Absatz
der Klasse "first" </p>
<h2>Dies ist eine H2-Überschrift</h2>
<p>Das ist ein normaler Absatz mit
<b>fettem</b> und
<i>kursivem</i> Text.</p>
<h3>Dies ist eine H2-Überschrift</h3>
<ul>
<li>dies ist ein Aufzählungspunkt mit
einem Dummy-Link <a href="css_test.html">link</a> darin
</ul>
<pre>
Das ist
vorformatierter Text.
</pre>
<table>
<tr>
<th>Eine Tabellenüberschrift</th>
</tr>
<tr>
<td>Eine Datenzelle einer Tabelle</td>
</tr>
</table>
<p class="last">Hier ein Absatz
der Klasse "last" </p>
</body> </html>

Erstellen eines Style Sheet zur Verwendung mit der Testseite

Jetzt erstellen Sie das Style Sheet; öffnen Sie eine neue leere Datei im Editor. Kopieren Sie den Code von unten und fügen Sie ihn ein, speichern Sie die Datei als sample1.css:

	H1 {
		font-family: Arial;
		font-size: xx-large;
		font-weight: bold;
		color: #800000;
		background: #FFFFCC;
		text-align: center;
		padding: 4pt;
		border-top: inset;
		border-bottom: inset;
		position: relative;
	}
	
	H2 {
		font-family: Arial;
		font-size: x-large;
		font-weight: bold;
		color: #FFFFCC;
		background: #800000;
		text-align: center;
		padding: 3pt;
		border-top: inset;
		border-bottom: inset;
		position: relative;
	}
	
	H3 {
		font-family: Arial;
		font-size: large;
		font-weight: bold;
		color: #800080;
		text-align: center;
		border-top: inset;
		border-bottom: inset;
		position: relative;
	}
	
	A {
		font-family: Arial;
		font-weight: bold;
		color: #0000FF;
		text-decoration: underline;
		position: relative;
	}
	
	A:LINK {
		font-family: Arial;
		font-weight: bold;
		color: #0000FF;
		text-decoration: underline;
		position: relative;
	}
	
	A:VISITED {
		font-family: Arial;
		font-weight: bold;
		color: #800080;
		text-decoration: underline;
		position: relative;
	}
	
	B {
		font-family: Arial;
		font-weight: bold;
		color: #800000;
		position: relative;
	}
	
	I {
		font-family: Arial;
		font-weight: bold;
		font-style: italic;
		position: relative;
	}
	
	LI  {
		font-family: Arial;
		font-size: medium;
		color: #000080;
		position: relative;
	}
	
	P {
		font-family: Arial;
		font-size: medium;
		color: #000080;
		position: relative;
	}
	
	TD {
		font-family: sans-serif;
		font-size: medium;
		background: #99CCCC;
	}
	
	TH {
		font-family: sans-serif;
		font-size: medium;
		font-weight: bold;
		color: #FF0000;
		background: #FFFF00;
		text-align: center;
		position: relative;
	}
	
	PRE {
		font-family: monospace;
		font-size: medium;
		background: #CCFFFF;
		position: relative;
		left: 1cm;
	}
	
	.first {
		border-top: ridge;
		border-left: ridge;
		position: relative;
	}
	
	.last {
		border-bottom: ridge;
		border-right: ridge;
	}
	


Style Sheet-Übung II

Arbeiten mit dem Style Sheet

Sehen Sie sich zuerst an, wie die Styles aussehen, indem Sie die Datei css_test.html in einem Webbrowser öffnen (beachten Sie, daß Sie IE 3 oder 4 bzw. Netscape 4 benutzen müssen und daß das Ergebnis davon abhängt, welchen Browser Sie benutzen. IE 3.0x stellt z.B. die Ränder nicht dar).

Nun da Sie die ursprünglichen Styles gesehen haben, werden wir mit dem Experimentieren beginnen, indem wir die Datei sample1.css editieren (beachten Sie, daß Sie die Änderungen natürlich in separaten Dateien speichern können -- z.B. sample2.css usw. -- wenn Sie das machen, müssen Sie das den Wert des Attributs href im Tag link in der Datei css_test.html für jedes neue Style Sheet anpassen, um die Ergebnisse zu sehen).

Bemerkung: blättern Sie ruhig zurück zu den Tabellen mit Style-Eigenschaften, um Ihr Gedächtnis aufzufrischen und die Syntax zu überprüfen.

Beginnen Sie mit einigen einfachen Änderungen:

  1. ändern Sie die Schriftgröße und die Hintergrundfarbe für die Tags H1, H2 und H3
  2. ändern Sie die Schriftgröße für Absätze auf 12pt

Sehen Sie sich nun die Resultate in der Datei css_test.html an; benutzen Sie Ihren Webbrowser.

(Die nächsten beiden Änderungen wirken sich nur auf die Anzeige in IE 4.0 oder Netscape 4.0 aus)

  1. ändern Sie die Breite der Border-Elemente in den Klassen .first und .last classes zu 'thin'
  2. ändern Sie den Border-style für das Element H1 zu 'solid'

Sehen Sie sich die Ergebnisse an.

Versuchen Sie nun, selbst neue Klassen hinzuzufügen:

  1. erstellen Sie eine Klasse .highlight -- setzen Sie die Hintergrundfarbe auf gelb (#FFFF00)
  2. erstellen Sie die Klasse .ufo -- setzen Sie die Schriftfamilie auf monospace, die Größe auf large, die Farbe auf grün (#00FF00) und den Hintergrund auf Schwarz (#000000)
  3. modifizieren Sie die Datei css_test.html, um diese neuen Klassen zu beherbergen. Sie können sie anzeigen, indem Sie ein beliebiges Tag mit einem 'class'-Attribut versehen, das auf den Namen der Klasse gesetzt wurde (ohne den Punkt) -- Beispiel: <div class="ufo">Das ist die Klasse ufo</div>

Sehen Sie sich die Resultate an.

Jetzt sollten Sie den Dreh in etwa 'raus haben. Ausgehend vom Beispiel oder von einer neuen CSS-Datei können Sie jetzt Ihre eigenen Styles erstellen. Sie können die Tabellen der Eigenschaften und Werte als Referenz verwenden und sollten daran denken, daß in den HTML-Dateien, mit denen Sie das Style Sheet verwenden, eventuell class-Attribute zu den Tags geschrieben werden müssen.



Style Sheet-Editoren

Es gibt jetzt drei Editoren zum Erstellen von Cascading Style Sheets:

Viele HTML-Editoren werden ohne Zweifel ebenfalls beginnen, Unterstützung für CSS anzubieten, aber es wird immer noch Gründe geben, einen separaten Editor in Betracht zu ziehen: ein spezieller CSS-Editor wird vielleicht eher auf Änderungen in CSS und bei der CSS-Unterstützung durch Browser reagieren und kann auch, durch die Konzentration auf nur eine Funktion den besten und einfachsten Weg zur Erstellung von CSS gehen.

Jeder dieser CSS Editoren ist noch jung und in einer agressiven Entwicklungsphase, aber alle sind sie bereits gut benutzbar und machen das Erstellen von Style Sheets erheblich schneller und einfacher als beim direkten Schreiben des Codes. Hier sind einige Kommentare, gefolgt von einer persönlichen Bewertung durch Robert Crooks, der aktuellen Versionen:

Sheet Stylist

Stärken

Sheet Stylist (beim Schreiben dieser Zeilen Version 1.0) hat eine Menge guter Funktionen, unter anderem:

Schlußfolgerung

Wenn Sie darauf aus sind, ernsthaft mit Style Sheets zu arbeiten und sie möglichst gut auszunutzen, dann ist dies im Moment das beste Werkzeug, das ich kenne. Kein anderes Tool geht so gut mit existierenden Style Sheets um oder unterstützt so viele CSS Eigenschaften.

Danere StyleMaker

Stärken

In Version 1.3 hat StyleMaker einen Sprung nach vorne gemacht. Es unterstützt nun (fast) alle Eigenschaften von IE 4.

Schwächen:

Schlußfolgerung

Sheet Stylist ist immer noch der bessere Editor, aber StyleMaker hat aufgeholt und ist definitiv einen Versuch wert.

CoffeeCup StyleSheet Maker++

Dieser Editor wurde anderswo gut bewertet; ich kann aber nicht viel empfehlenswertes daran finden. Es hat ein Interface mit Tabs, um Styleeigenschaften einzugeben, genau wie Sheet Stylist und StyleMaker, kann aber keine existierenden CSS-Dateien importieren. Stattdessen benutzt es wie StyleMaker eine proprietäre Datenbank, um die Styleinformation zu speichern; da aber die Importfunktion fehlt, können CSS-Dateien nicht manuell beabeitet werden, ohne eine Abweichung von der Version des Editors von CoffeeCup zu erhalten. Die erstellten Datenbanken kommen mir auch ziemlich groß vor, deshalb dauert es immer lange, sie zu laden oder zu speichern. Dazu kommt noch, daß es nicht alle Eigenschaften von CSS unterstützt. In dieser Version ist der Editor abgeschlagener dritter.

[Inhalt dieses Abschnitts] [Home Page]

Bernhard Friedrich

doozer@hsguide.com