Post on 19-Oct-2020
26. April 2005
CSS - Cascading Style Sheets
RechenzentrumUniversität Stuttgart
Maria Vass
26. April 2005
Gliederung:
• CSS Grundlagen• CSS praktisch einsetzen
– CSS in HTML einbinden– Schriften / Texte formatieren– Listen, Pseudoformate– Rahmen, Abstände und Ränder– Elemente positionieren
• Browserprobleme
• Übung
26. April 2005
CSS Stylesheets und HTML
• Sinn und Zweck von CSS Stylesheets– eine unmittelbare Ergänzung zu HTML– Definition von Formateigenschaften einzelner HTML
Elemente– Trennung von Form und Inhalt– halten die HTML-Dateien klein– <font> Deprecated Lösung -> CSS– leicht zu erlernen
• Software: einfacher Texteditor wie Notepad
26. April 2005
CSS - Versionen
1996: CSS Level 1 (CSS1)
1998: CSS Level 2 (CSS2)
2003: CSS Level 3 in Bearbeitung
26. April 2005
Aufbau eines Stils
•Bei mehreren Definitionenp {Erste Definition; Zweite Definition;}
•Ein lokaler Stil wird direkt im HTML Tag gesetzt und durch das Attribut style eingeleitet
<p style=„font-size: 14pt;“>text</p>Hinweis: end Tags müssen gesetzt werden !!!
26. April 2005
Stil Name
• HTML – Selektor: h1 { Stildefinition; }
• Klassen: .klassenname {Stildefinition; }
• IDs: #idname {Stildefinition; }
26. April 2005
HTML-Selektor
• verknüpfen einen Elementtyp, also ein HTML-Tag mit einer Formatierung.
Z.B:
h1 { font-size:14px; font-style:italic; } p { color:#ff0000;}
26. April 2005
Klassen
Klassen sind Selektoren mit beliebigen Namen. Vor dem Namen wird ein Punkt notiert. Kleinbuchstaben, keine Umlaute, Leer oder Sonderzeichen. Name muss mit einem Buchstaben beginnen.• Für alle HTML Tags: .klassenname { Stildefinitionen }
26. April 2005
Klassen verwenden
• Für bestimmtes HTML Tag:Tag.klassenname { Stildefinitionen }
Beispiel: h1.rot {color: red;}
• Verwenden von Klassen:
<h1 class=„rot">....</h1>
26. April 2005
Beispiel
.rot {color: red;}h1.rot {color: red;}
Auf der HTML Seite<h1 class=„rot“><h2 class=„rot“>
26. April 2005
IDs verwenden
• Verwendung über: id=“name“ – ohne # !
26. April 2005
Angaben für CSS - Werte
• Numerische Angaben– px, pc, pt, cm, mm, ...
http://de.selfhtml.org/css/formate/wertzuweisung.htm• Farbangaben
– z.B. #FFFF00, red, rgb(234,123,0), rgb(60%,90%,75%); ...http://de.selfhtml.org/css/formate/wertzuweisung.htm#farbenhttp://de.selfhtml.org/diverses/anzeige/farbnamen_16.htmhttp://de.selfhtml.org/diverses/anzeige/farbpalette_216.htm
• URL – Angaben– Absolute URL: http://www.adresse.de/verzeichnis/datei– Relative URL: ../verzeichnis/unterverzeichnis/datei
z.B. background-image: url(background.gif)• Beschreibende Angaben
– Abhängig vom Element– z.B. center, left, solid, bold...
26. April 2005
CSS in HTML einbinden
• Lokal: direkt ins betreffende HTML Tag
• Intern: in <head> Bereich der betreffenden Datei
• Extern: in .css – Datei
26. April 2005
Lokale Methode
Gilt nur für dieses Tag.
26. April 2005
Interne Methode
<html><head><title>Titel der Datei</title><style type="text/css"><!--/* ... Hier werden die Formate definiert ... */
--></style></head><body>
... Inhalt der HTML – Seite ...</body>
</html>
Gilt für die ganze Seite.
26. April 2005
Externe Methode
<html><head><title>Titel der Datei</title><link rel="stylesheet" type="text/css"
href="standard.css"></head>
<body></body></html>
rel = relation = Bezug, type = Mime-Typ). Beim Attribut href= geben Sie die gewünschte Datei an (href = hyper reference = Hypertext-Referenz). Wenn sich die CSS-Datei in einem anderen Verzeichnis oder auf einem anderen Server befindet, müssen Sie an dieser Stelle Pfadangaben oder absolute URLs notieren.
26. April 2005
Mehrere externe CSS verwenden
<html><head><title>Titel der Datei</title><link rel="stylesheet" type="text/css"
href="standard.css"><link rel="stylesheet" type="text/css"
href=„realm.css"></head>
<body></body></html>
Beispiel uniwwwhttp://www.uni-stuttgart.de/ueberblick/ Quelltext
26. April 2005
Externe CSS-Dateien importieren
<html><head>
<title>Titel der Datei</title> <style type="text/css">
<!-- @import url(druck.css) print, embossed;@import url(pocketcomputer.css) handheld;@import url(normal.css) screen; -->
</style></head> <body> </body> </html>
26. April 2005
Verschiedene separate Stylesheets für unterschiedliche Ausgabemedien
<html><head>
<title>Titel der Datei</title> <link rel="stylesheet" media="screen" href="website.css"> <link rel="stylesheet" media="print, embossed" href="druck.css"> <link rel="stylesheet" media="aural" href="speaker.css">
</head><body> </body></html> http://de.selfhtml.org/css/formate/einbinden.htm#link_media
26. April 2005
Formate für Pseudoelemente
• Fest definierte Schlüsselwörter• Definition: tag:pseudoformat { Stildefinition }• z.B. für Verweise:
a:link = Verweise zu noch nicht besuchten Seitena:visited = Verweise zu bereits besuchten Seitena:hover = Verweise, während der Anwender mit der Maus darüber fährta:active = für gerade angeklickte VerweiseBeispiel
• :first-letter Beispiel: p:first-letter{color: #0000ff;}• :first-line Beispiel: p:first-line{color: #0000ff;}
26. April 2005
Gruppen definieren
• Wenn verschiedene Tags gleiche Eigenschaften besitzen sollen, können Sie diese Tags in Gruppen zusammenfassen
Beispiel:
p,td {color: #0000ff; font-family: Arial,Helvetica, sans-serif;}
26. April 2005
Eigene Inline-Tags definieren
• <p>Im Absatz<span class=„rot“>steht rote Schrift</span>, die mit einem benutzerdefinierten Inline-tag formatiert wurde.</p>
• <p>Im Absatz<span id=„rot“>steht rote Schrift</span>, die mit einem benutzerdefinierten Inline-tag formatiert wurde.</p>
• <p>Im Absatz<span style=„color:red;“>steht rote Schrift</span>, die mit einem benutzerdefinierten Inline-tagformatiert wurde.</p>
26. April 2005
Vererbung
<html><head></head><body style=„font-family:Arial,helvetica,sans-serif; font-
size:12pt; "><p>Dies ist nur ein kleiner Beispieltext, indem einige Wörter mit
einer <b>Fett – <i>Markierung</i></b> hervorgehoben wurden.</p>
</body></html>
26. April 2005
Kommentare in CSS
• Einzelne Kommentarzeilen
// Hier folgt der Kommentar
• Mehrzeilige Kommentare
/* Hier folgt ein mehrzeiligerKommentar */
26. April 2005
Schrifttypen
Times New Roman
Arial
Courier
26. April 2005
Schriften
Eigenschaft Mögliche Werte
Beispiel
Beispiel
Beispiel
Beispiel
Beispiel
Beispiel
font-family Schriftart Arial, Helvetica, sans-serif
font-size Schriftgröße
Schriftstil
Schriftgewicht
Schriftfarbe
Zeilenhöhe
12pt, large, smaller
font-style normal, italic
font-weight 500, bold, lighter
color #C0C0C0, red
line-height 14pt, 1.2
26. April 2005
Text formatieren
Eigenschaft Mögliche Werte
Beispiel
Beispiel
Beispiel
Beispiel
Beispiel
text-align Horizontale Ausrichtung left, center, justify
vertical-align
text-indent
white-space
text-decoration
VertikaleAusrichtung
Texteinrückung
Textumbruch
Textdekoration
top, bottom,middle...
0.5cm,2px,
normal,pre,nowrap
underline, none, blink
26. April 2005
Listenformatierung
Eigenschaft Mögliche Werte
Beispiel
Beispiel
Beispiel
list-style-type Darstellungstyp bullet, lower-roman, disc
list-style-imageEigenes
Listenzeichen
Listeneinrückung
url(naviwuerfel.gif)
list-style-position inside, outside
26. April 2005
Elementhintergründe
Eigenschaft Mögliche Werte
Beispiel
Beispiel
Beispiel
Beispiel
Beispiel
Beispiel
background-color Farbe #C450E0, blue
background–image Bild
Wiederh.
Fixierung
Position
Alles
url(background.gif)
background–repeat no-repeat, repeat-x
background-attachment scroll, fixed
background–position top left, 10px 45px
backgroundURL Wiederholung Fixierung Position Farbe
26. April 2005
Aussenrand und Abstand
• margin-top• margin-bottom• margin-left• margin-right
erzwungener Leerraum zwischen dem aktuellen Element zu seinem Elternelement oder Nachbarelement
Beispiele bei SELFHTML
26. April 2005
Innenabstand
Innenabstand bedeutet: erzwungener Leerraum zwischen dem Inhalt eines Elements zu seinem eigenen Elementrand, also z.B. zwischen dem Text eines Elements und dem Rand dieses Elements.Sinnvoll z.B. bei HTML Elementen, die einen eigenen Absatz erzeugen bzw. einen Block bilden (h1,h2.., p und bei Tabellen.)
• padding-top:• padding-bottom:• padding-left:• padding-right:
Beispiele
26. April 2005
Rahmen
• Sinnvoll für HTML-Elemente, die einen eigenen Absatz erzeugen bzw. einen Block bilden (h1,..,p,div, table)
• border-width• border-color• border-style
Beispiel
26. April 2005
Rahmentypen
26. April 2005
Positionierung von Elementen• position (Positionierung):
– absolute = Ausrichtung am Fenster– relative = Relativ zum letzten Element
Beispiele• top, left, ...:
– auch bottom, right oder mehrere Angaben möglichBeispiele
• width– Numerische Angabe Beispiel
• float Textumfluss: Beispiel• z-index (Reihenfolge von überlappenden Elementen):
– von unten (0) nach oben (..) aufsteigendBeispiel
26. April 2005
Browserkompatibilität
• Auch die neuesten Versionen der am häufigsten verwendeten Browser sind nicht voll kompatibel mit den Standards der W3C
• Lösung von Kompatibilitätsprobleme:– gestalterische Grundkonzeption, Testseite basteln– Basiselemente von CSS einbauen und Seite mit
verschiedenen Browser prüfen– Erweiterungen einbauen und prüfen– Bei Problemen die Notwendigkeit abwägen– Probleme können auch an einer fehlerhaften
Programmierung liegen:validieren http://jigsaw.w3.org/css-validator/
26. April 2005
Weiterführende Links
• Tabellennloses Layout: Tabellen durch CSS ersetzenTableless layout HOWTO (http://www.w3.org/2002/03/csslayout-howto.html.en)
• ThreeColumnLayouts mit CSS (http://css-discuss.incutio.com/?page=ThreeColumnLayouts)
• CSS Portal des W3Chttp://www.w3.org/Style/CSS/
• CSS Validatorhttp://jigsaw.w3.org/css-validator/
26. April 2005
Kursunterlagen
• http://www.rus.uni-stuttgart.de/kurse/material/