G r a f i k l a n d - PhotoImpact Community

::Sitemap::

 
Tutorials Goodies
  Cascading Style Sheets


Was sind Cascading Style-Sheets?
Was kann man mit Style Sheets definieren?
1. Einbettung der Formatvorlagen im <Head> von HTML-Dokumenten
1.2 Definition von Klassen <class> in einer Formatvorlage
2. Inline-Formatvorlagen
3. Auslagerung von Formatvorlagen und Verknüpfung mit den HTML-Dokumenten
3.1 Wie sieht die Definition einer externen Datei in der HTML-Seite aus?

4. Eine unvollständige Übersicht an CSS Befehlen

Beispiel für farbige Scrolleisten und nicht unterstrichene Links.

Weitere Links zu CSS:
Buchtipps

Was sind Cascading Style-Sheets?

Cascading Style-Sheets (CSS2) des (W3C) sind Formatvorlagen, wie man sie aus den gängigen Programmen für Textverarbeitung (z.B Word) und Programmen für Desktop Publishing (z.B. Publisher) kennt. Darin kann man typografische Informationen für ein Dokument/Webseite, einer bestimmte Stelle im Dokument oder seiner gesamten Webseiten definieren. Style-Sheets (CSS) sind kein Bestandteil von HTML, sondern eine eigene "Sprache", die allerdings  in HTML verwendet werden kann. Jedoch können nur Internet Explorer ab der Version 3.0 und Netscape Navigator ab Version 4, CSS interpretieren. Die anderen Browser "sehen" nur ein reines HTML-Dokument mit den Formatierungselementen wie Überschriften, Absätzen Listen und Tabellen usw.

Man kann mit CSS Sachen definieren, die mit normalem HTML nicht gehen, ausserdem ist es eine große Hilfe, bei umfangreichen Webseiten, wenn man eine externe CSS Datei hat, dann braucht man nämlich nur eine Datei ändern, und nicht 100 oder mehr Seiten.

nach oben

 

Was kann man mit Style Sheets definieren?
  • Formatierung der Hyperlinks (Farben/ Unterstreichung oder nicht/ Hover, wenn man mit der Maus drüber geht)
  • Schriftart, Schriftgröße und Schriftfarbe
  • Textauszeichnungen (fett, kursiv und unterstrichen ...)
  • Textausrichtung (Standard/ Zentriert/Rechts/ Blocksatz)
  • Zeichenabstand, Zeilenhöhe, Wortabstand
  • Rahmen/Tabellen (Farbe, Grösse, Innentext...)
  • Vorder- und Hintergrundfarbe oder Hintergrundgrafik
  • Mauszeiger können neue Formen annehmen - wie hier auf der HP
  • Randabstände
  • Positionierungen (relative und absolut für beliebige Objekte)

nach oben

Wie funktioniert es?

Es gibt drei verschiedene Möglichkeiten - Punkt 1 und 3 sind am leichtesten):

1. Einbettung der Formatvorlagen im <Head> Bereich von HTML-Dokumenten

Mit dieser Methode werden die Formatvorlagen jeweils für eine gesamte Webseite festgelegt.  Die anderen Seiten werden damit nicht formatiert. Die Einbettung erfolgt über das <style> - Tag im Head Bereich der Datei. Ein Beispiel:

<HTML>
<HEAD>
<TITLE>CSS, welches in einer gesamten HTML-Seite gilt</TITLE>
<style type="text/css">
<!--
p {font-family: Verdana, Tahoma, Arial, Helvetica; color:white;font-size:14pt}
h1 {font-size:20pt}
td {font-size:10pt}
li {font-family: Verdana, Tahoma, Arial, Helvetica; font-size:10pt}
-->
</style>
</HEAD>
<BODY bgcolor="#000000" text="#FFFFFF">
<H1>Überschrift1</H1>
...Hier kommt dann der Fliesstext...
</BODY>
</HTML>

Die obige Anweisung würde beispielsweise bedeuten, dass im Dokument alle Überschriften ersten Ordnung sowie der Fliesstext mit der Schrift (in der Reihenfolge, wie vorhanden) in Verdana, Tahoma, Arial oder Helvetica in weiss dargestellt werden. Der normale Fliesstext in der Grösse 14pt und die Überschrift h1 in 20pt. Das Problem bei diesen Anweisungen ist es , dass die Formatierungen für alle aufgezählten Elemente gelten, die damit praktisch neu definiert wurden. Also sprich -   Egal, was Du in Deiner Webseite für Schriftarten und -farben ausgewählt hast, es gelten die CSS Angaben! Klicke hier, um das Beispiel im neuen Fenster anzuschauen.

nach oben

1.2 Definition von Klassen <class> in einer Formatvorlage

Falls Ihr doch in Eurer Webseite zusätzlich etwas anderes darstellen wollt, kann man das durch die Definition von Klassen machen. Danach ist dann sowohl die Verwendung der mit Formatvorlagen dargestellten Elemente als auch der Standardformatierungen aus HTML möglich. Eine Klasse wird folgendermaßen definiert:

<HTML>
<HEAD>
<TITLE>Beispiel CSS-Klassen und Standardformatierungen die gleichzeitig verwendet werden</TITLE>
<STYLE TYPE="text/css">
<!--
H1.klasse { font-family: Arial;color:#ceaa61 }
-->
</STYLE>
</HEAD>
<BODY>
<H1 class="klasse">Überschrift, die mit CSS definiert wurde</H1>
<H1>Eine ganz normale Überschrift</H1>
...
</BODY>
</HTML>

Bei diesem Beispiel wird dann die erste Überschrift in Arial und dieser 'goldenen" Farbe, wie hier im Text dargestellt (#ceaa61), während die zweite Überschrift in der Standard-Schriftart und in weiss auf dem Bildschirm erscheint. Klicke hier und Du siehst das Beispiel im neuen Fenster.

nach oben

2. Inline-Formatvorlagen

Inline-Formatierungen können in einer gesamten Webseite verwendet werden, ebenso wie Attribute von HTML-Tags, wobei Formatvorlagen natürlich wesentlich mehr Möglichkeiten bieten. Inline-Formatierungen sind auch die einzige Möglichkeit, Ausnahmen von anderen Formatvorlagen festzulegen.

Beispiel einer Inline-Formatvorlage:

<HTML>
<HEAD>
<TITLE>Beispiel - Inline-Formatvorlagen</TITLE>
</HEAD>
<BODY bgcolor="#000000" text="#FFFFFF">
<h1 style="color:blue; font-face: Arial, Verdana; text-indent:15pt;">Überschrift mit einer Inline Formatierung</h1>
<H1>Eine ganz normale Überschrift</H1>
...
</BODY>
</HTML>

Anhand dieses Beispiels dürfte der Begriff  Inline-Formatvorlage wohl deutlich geworden sein. Es wurden keine Formatierungen im Head der Webseite vorgenommen, sondern die Formatvorlagen gleich mit Hilfe des style-Attributs an das Tag angehängt. Die Formatvorlage endet dann natürlich auch dort, wo dieses wieder geschlossen wird. 

Zur Erklärung der Formatierung:
Die Überschrift der ersten Ordnung (h1), wird in Arial, Helvetica dargestellt. In der Farbe blau. Und diese eine Überschrift wird mit 15pt eingerückt (text-indent 15 pt). Die nachvollgende Überschrift wird wieder in der Standardformatierung dargestellt. Klicke hier um das Beispiel im neuen Fenster zu sehen.

nach oben

3. Auslagerung von Formatvorlagen und Verknüpfung mit den HTML-Dokumenten

Für die Definition von Formatvorlagen einer kompletten Website ist es natürlich vorteilhaft, diese Formatvorlagen in einer ausgelagerten Datei zu speichern und zentral abzulegen, so dass im Falle einer Layoutänderung nur das Style-Sheet (.css Datei) bearbeitet werden muss. Damit erspart man sich auf Dauer viel Zeit und Arbeit, aber auch Ergänzungen sind jederzeit ohne großen Aufwand möglich.

Die ausgelagerte Datei enthält nichts anderes als die Formatvorlagen, welche sonst im Head eingetragen werden, allerdings ohne <style>- Tags:

body {
margin-top : 10px;
margin-bottom : 10px;
cursor : crosshair ; 
scrollbar-arrow-color: #FD9DB0; 
scrollbar-base-color: #000000;
scrollbar-highlight-color : #CEAA61; 
scrollbar-shadow-color : #CEAA61;
background-color : #000000;


p , ul , ol , li , div , td , th , address , blockquote , nobr , b , i {
font-family : Verdana, Tahoma, Arial, Helvetica, sans-serif; color: #CEAA61;
background : #000000;
}

p.justify { 
font-size:10pt;
text-align:justify; 
color: #CEAA61;
background : #000000;
}

h1 {
font-size : 18pt; 
color: #CEAA61;
}


h2 {
font-size : 16pt;
color: #CEAA61;

}



h3 {
font-size : 12pt;
color: #CEAA61;
}


h4 {
font-size : 10pt;
color: #CEAA61;

}


p , ul , ol , li , div , td , th , address , nobr , b , i {
font-size : 10pt;
}



a:link {
color: #F1AEC2; 
text-decoration: none;
}


a:visited {
color : #F1AEC2; 
text-decoration : none;
}


a:hover {
color : #F1AEC2; 
text-decoration : underline;
}

...

So könnte ein Style-Sheet aussehen, dass in eine externen Datei ausgelagert wurde. Diese Datei wird dann unter einem sinnvollem Namen sowie der Endung .css abgespeichert und kann im Root-Verzeichnis oder einem anderen beliebigen Ordner/Verzeichnis abgelegt werden. Die meisten modernen HTML-Editoren verfügen über einen eigenen Editor für Style-Sheets, so dass der Aufwand sich im Rahmen hält und die Kenntnis sämtlicher Formatierungsmöglichkeiten nicht unbedingt notwendig ist. Oder man behilft sich mit einem CSS Editor z.B TopStyle.

3.1 Wie sieht die Definition einer externen Datei in der HTML-Seite aus?

Um diese Formatvorlagen nun zur Darstellung von HTML-Dokumenten verwenden zu können, müssen die HTML-Dokumente mit den Formatvorlagen verknüpft werden. Dies geschieht über einen <Link> -Tag im Head der Dokumente:

<HTML>
<HEAD>
<TITLE>Ausgelagerte Formatvorlagen - Beispiel Grafikland/TITLE>
<link rel="stylesheet" type="text/css" href="grafikland.css">
</HEAD>
<BODY>
Inhalt mit den Formatierungen aus der CSS-Datei
...
</BODY>
</HTML>

In meinem Fall heisst die ausgelagerte CSS Datei grafikland.css - Ich habe mehrere Webseiten (Projekte), so kann ich es am Besten auseinanderhalten. Man könnte die Datei aber einfach auch stylsheet.css benennen. 

Alle nicht definierten Tags werden mit den Standardeinstellungen angezeigt.
<link rel="stylesheet" type="text/css" href="grafikland.css">
Diese kurze Zeile muss in jedes HTML-Dokument eingefügt werden, dass die angegebenen Formatvorlagen verwenden soll, dafür entfallen die einzelnen Angaben in jedem Dokument.

nach oben

4. Eine unvollständige Übersicht an CSS Befehlen:

Befehl

Werte

Hyperlinks

A:link

Link

A:visited

Besuchter Link

A:active

Aktiver Link

A:hover

OnMouse-Over-Effekt

Schriftdefinitionen

font-family

Schriftarten (z.B. Verdana, Tahoma, sanserif)

font-style

normal | italic | oblique

font-variant

normal | small-caps

font-weight

normal | bold | bolder | lighter

font-size

absolute Größe | relative Grösse | Größe in Prozentangabe

Farben und Hintergrund

color

Farbe in Wort und Hexadezimalzahl z.B blue oder #CEAA61 oder spezielle Farbwörter

background-color

transparent | Farbe

background-image

none | URL der Grafik 

background-repeat

repeat | repeat-x | repeat-y | no-repeat

background-attachment

scroll | fixed

Farbwörter

activeborder

Farbe der aktiven Fenstertitelzeile.

Activecaption

Farbe der Überschrift in der aktiven Fenstertitelzeile.

Appworkspace

Farbe des Hintergrunds der aktiven Anwendung.

Background

Farbe des Desktop-Hintergrunds.

Buttonface

Farbe von Buttons in Dialogfenstern.

Buttonhighlight

Farbe für 3D-Schatten von Buttons in Dialogfenstern.

Buttontext

Farbe von Texten beschrifteter Buttons in Dialogfenstern.

Captiontext

Farbe von Überschriften in Dialogfenstern.

Greytext

Farbe von deaktiviertem Text in Dialogfenstern.

Highlight

Farbe von ausgewählten Einträgen in Auswahllisten.

Highlighttext

Farbe von selektiertem Text.

Inactiveborder

Farbe einer nicht aktiven Fenstertitelzeile.

Inactivecaption

Farbe der Überschrift einer nicht aktiven Fenstertitelzeile.

Infobackground

Farbe für Tooltips und Hints (kleine Popup-Hilfen).

Infotext

Textfarbe für Tooltips und Hints.

Menu

Farbe für Menüleisten.

Menutext

Farbe für Menüeinträge.

Scrollbar

Farbe der Scroll-Leiste in Fenstern.

Threeddarkshadow

dunkle Farbe bei Schatten von 3D-Elementen.

Threedface

Farbe von 3D-Elementen.

Threedlightshadow

Farbe von gerade angeklickten 3D-Elementen.

Threedhighlight

Helle Farbe bei Schatten von 3D-Elementen.

Threedshadow

Dunkle Farbe bei Schatten von 3D-Elementen.

Window

Hintergrundfarbe von Dokumentfenstern

Windowframe

Farbe von Fensterrahmen.

Windowtext

Farbe von normalem Text in Dokumentfenstern

Text

word-spacing

normal | Größe

letter-spacing

normal | Grösse

text-decoration

none | underline | overline | line-through | blink

vertical-align

baseline | sub | super | top | text-top | middle | bottom | Prozent

text-transform

none | capitalize | uppercase | lowercase

text-align

left | right | center | justify

text-indent

Größe | Prozent

line-height

normal | Nummer | Größe | Prozent

Positionierung/Rand

position

static | absolute | relative

left

auto | Größe | Prozent

top

auto | Größe | Prozent

width

auto | Größe | Prozent

height

auto | Größe | Prozent

clip

auto | Form

overflow

visible | hidden | scroll | auto

z-index

auto | Zahl

visibility

inherit | visible | hidden

margin-left :

absoluter Abstand/Rand z.B.margin-left:15pt

(in pt(Punkt), pc (pica), in (Inch), mm oder cm)

margin-right :

absoluter Abstand/Rand

(in pt(Punkt), pc (pica), in (Inch), mm oder cm)

margin-bottom :

absoluter Abstand/Rand

(in pt(Punkt), pc (pica), in (Inch), mm oder cm)

margin-top :

absoluter Abstand/Rand

(in pt(Punkt), pc (pica), in (Inch), mm oder cm)

Tabellen

border-style

Rahmentyp - z.B. dotted; border-width: thin;/dashed; border-width: thin/solid/ridge/dashed/dotted...

border-color

Rahmenfarbe

padding-top

Innenabstand oben

padding-bottom

Innenabstand unten

padding-left

Innenabstand links

padding-right

Innenabstand rechts

padding

Innenabstand alle Seiten

Sonstiges

Cursor - Achtung, die in IE 5.5 definierte Cursor können in IE 6+ leicht verändert aussehen

 

Bitte geht mit der Maus auf die Begriffe!

auto ( IE 5.5)

Normaleinstellung

default ( IE 5.5)

Standard-Cursor

crosshair ( IE 5.5)

Kreuz

hand (IE 5.5)

Hand

move ( IE 5.5)

Verschiebe-Kreuz

n-resize ( IE 5.5)

Pfeil zeigt nach oben

ne-resize ( IE 5.5)

rechts oben

e-resize ( IE 5.5)

rechts

se-resize ( IE 5.5)

rechts unten

s-resize ( IE 5.5)

unten

sw-resize (IE 5.5)

links unten

w-resize ( IE 5.5)

links

nw-resize ( IE 5.5)

links oben

text (IE 5.5)

Text-Cursor (wie in Word)

wait ( IE 5.5)

Wartezustand (meist Sanduhr)

help (IE 5.5)

Hilfe (meist Fragezeichen)

progress (IE 6)

Pfeil mit Sanduhr

not-allowed (IE 6)

durchgestrichener Kreis

no-drop (IE 6)

Hier anschauen

vertical-text ( IE 6)

wie text nur vertikal

all-scroll ( IE 6)

Pfeile in alle 4 Richtungen mit Kreis in der Mitte

col-resize ( IE 6)

links und rechts Pfeil mit zwei Mittellinien

row-resize ( IE 6)

Pfeil nach oben und Unten mit zwei Mittellinien


Scrollbar

...damit kannst Du die Scroll-Leiste Deines Browsers farblich ändern. Achtung, dass geht nur mit dem IE ab Version 5.5!

scrollbar-3dlight-color

Farbe des 3-D Effekts (links aussen)

scrollbar-arrow-color

Farbe des Pfeils

scrollbar-base-color

Basisfarbe der Leiste

scrollbar-darkshadow-color

Farbe des Schattens rechts aussen

scrollbar-face-color

Farbe der Oberfläche
(mit scrollbar-base-color kombinierbar)

scrollbar-highlight-color

Farbe des Schattens am oberen linken Rand

scrollbar-shadow-color

Farbe des Schattens am unteren rechten Rand

scrollbar-track-color

Farbe der Laufleiste an den Stellen, an denen keine Leiste sichtbar ist, weil die Seite in den Browser passt.

Und vieles andere mehr... 

nach oben

Zum Schluss gibt es noch ein Beispiel für farbige Scrolleisten und nicht unterstrichene Links.

Weitere Links zu CSS:

Dr. Web - Alles zum Thema CSS
CSS von Stefan Münz
Style Sheets von Claudia

Eine wunderschöne Webseite mit einer guten CSS Rubrik hat auch Fabian Lorenzen. Danke noch mal Fabian für Deine Tipps.

Und wem das alles zu kompliziert ist, kann sich mit einem CSS Editor behelfen, z.B. von TopStyle. Es ist meiner Meinung nach zuviel verlangt, alles im Kopf zu haben. Nun, dass ist das gleiche Thema, wie es HTML Puristen und Leute gibt, die mit Editorprogrammen arbeiten ;-)

 

Buchtipp:
Internet intern. Cascading Style Sheets von Stefan Münz und co.

 

© Copyright Birgitt Aurbach 1999 - 2003, all rights reserved :.: last update: 10.08.03 - nach oben