2. Unterrichtsblock: Farben, Rahmen und Box-Modell

Inhaltsverzeichnis
Farben
Bisher haben dir Farbnamen wie crimson gereicht. Davon kennt CSS nur 139, ein Designer will aber jeden beliebigen Farbton. Deshalb kann man Farben auch beschreiben. Mit color färbst du den Text, mit background-color den Hintergrund, in jeder Notation.
| Schreibweise | Beispiel (die Farbe seagreen) | So funktioniert sie |
|---|---|---|
| Farbname | seagreen | englischer Name, einfach zu merken, aber nur 139 Farben |
| HEX | #2e8b57 | # und drei Paare für Rot, Grün und Blau, jeweils 00 bis ff (hexadezimal) |
| HEX kurz | #fff statt #ffffff | wenn jedes Paar aus zwei gleichen Zeichen besteht, darf man abkürzen |
| RGB | rgb(46, 139, 87) | Rot, Grün, Blau, jeweils 0 bis 255 (dezimal) |
| HSL | hsl(146, 50%, 36%) | Farbton 0 bis 360 (Farbkreis), Sättigung und Helligkeit in Prozent |
Alle vier Schreibweisen beschreiben dieselbe Farbe:
<div class="k" style="background-color: seagreen;">seagreen</div>
<div class="k" style="background-color: #2e8b57;">#2e8b57</div>
<div class="k" style="background-color: rgb(46, 139, 87);">rgb(46, 139, 87)</div>
<div class="k" style="background-color: hsl(146, 50%, 36%);">hsl(146, 50%, 36%)</div>
.k {
color: white;
padding: 12px;
margin-bottom: 6px;
}
HSL ist für Entwürfe besonders praktisch: Der Farbton bleibt gleich, nur die Helligkeit ändert sich. So entstehen passende Paletten:
<div class="k" style="background-color: hsl(210, 50%, 25%); color: white;">Helligkeit 25 %</div>
<div class="k" style="background-color: hsl(210, 50%, 45%); color: white;">Helligkeit 45 %</div>
<div class="k" style="background-color: hsl(210, 50%, 70%);">Helligkeit 70 %</div>
<div class="k" style="background-color: hsl(210, 50%, 92%);">Helligkeit 92 %</div>
.k {
padding: 12px;
margin-bottom: 6px;
}
Die komplette Liste der Farbnamen mit HEX- und RGB-Wert:
Alle 139 Farbnamen mit Farbfeld anzeigen
| Farbe | Name | HEX | RGB |
|---|---|---|---|
AliceBlue | #F0F8FF | rgb(240, 248, 255) | |
AntiqueWhite | #FAEBD7 | rgb(250, 235, 215) | |
Aqua | #00FFFF | rgb(0, 255, 255) | |
Aquamarine | #7FFFD4 | rgb(127, 255, 212) | |
Azure | #F0FFFF | rgb(240, 255, 255) | |
Beige | #F5F5DC | rgb(245, 245, 220) | |
Bisque | #FFE4C4 | rgb(255, 228, 196) | |
Black | #000000 | rgb(0, 0, 0) | |
BlanchedAlmond | #FFEBCD | rgb(255, 235, 205) | |
Blue | #0000FF | rgb(0, 0, 255) | |
BlueViolet | #8A2BE2 | rgb(138, 43, 226) | |
Brown | #A52A2A | rgb(165, 42, 42) | |
BurlyWood | #DEB887 | rgb(222, 184, 135) | |
CadetBlue | #5F9EA0 | rgb(95, 158, 160) | |
Chocolate | #D2691E | rgb(210, 105, 30) | |
Coral | #FF7F50 | rgb(255, 127, 80) | |
CornflowerBlue | #6495ED | rgb(100, 149, 237) | |
Cornsilk | #FFF8DC | rgb(255, 248, 220) | |
Crimson | #DC143C | rgb(220, 20, 60) | |
Cyan | #00FFFF | rgb(0, 255, 255) | |
DarkBlue | #00008B | rgb(0, 0, 139) | |
DarkCyan | #008B8B | rgb(0, 139, 139) | |
DarkGoldenRod | #B8860B | rgb(184, 134, 11) | |
DarkGray | #A9A9A9 | rgb(169, 169, 169) | |
DarkGreen | #006400 | rgb(0, 100, 0) | |
DarkKhaki | #BDB76B | rgb(189, 183, 107) | |
DarkMagenta | #8B008B | rgb(139, 0, 139) | |
DarkOliveGreen | #556B2F | rgb(85, 107, 47) | |
DarkOrange | #FF8C00 | rgb(255, 140, 0) | |
DarkOrchid | #9932CC | rgb(153, 50, 204) | |
DarkRed | #8B0000 | rgb(139, 0, 0) | |
DarkSalmon | #E9967A | rgb(233, 150, 122) | |
DarkSeaGreen | #8FBC8F | rgb(143, 188, 143) | |
DarkSlateBlue | #483D8B | rgb(72, 61, 139) | |
DarkSlateGray | #2F4F4F | rgb(47, 79, 79) | |
DarkTurquoise | #00CED1 | rgb(0, 206, 209) | |
DarkViolet | #9400D3 | rgb(148, 0, 211) | |
DeepPink | #FF1493 | rgb(255, 20, 147) | |
DeepSkyBlue | #00BFFF | rgb(0, 191, 255) | |
DimGray | #696969 | rgb(105, 105, 105) | |
DodgerBlue | #1E90FF | rgb(30, 144, 255) | |
FireBrick | #B22222 | rgb(178, 34, 34) | |
FloralWhite | #FFFAF0 | rgb(255, 250, 240) | |
ForestGreen | #228B22 | rgb(34, 139, 34) | |
Fuchsia | #FF00FF | rgb(255, 0, 255) | |
Gainsboro | #DCDCDC | rgb(220, 220, 220) | |
GhostWhite | #F8F8FF | rgb(248, 248, 255) | |
Gold | #FFD700 | rgb(255, 215, 0) | |
GoldenRod | #DAA520 | rgb(218, 165, 32) | |
Gray | #808080 | rgb(128, 128, 128) | |
Green | #008000 | rgb(0, 128, 0) | |
GreenYellow | #ADFF2F | rgb(173, 255, 47) | |
HoneyDew | #F0FFF0 | rgb(240, 255, 240) | |
HotPink | #FF69B4 | rgb(255, 105, 180) | |
IndianRed | #CD5C5C | rgb(205, 92, 92) | |
Indigo | #4B0082 | rgb(75, 0, 130) | |
Ivory | #FFFFF0 | rgb(255, 255, 240) | |
Khaki | #F0E68C | rgb(240, 230, 140) | |
Lavender | #E6E6FA | rgb(230, 230, 250) | |
LavenderBlush | #FFF0F5 | rgb(255, 240, 245) | |
LawnGreen | #7CFC00 | rgb(124, 252, 0) | |
LemonChiffon | #FFFACD | rgb(255, 250, 205) | |
LightBlue | #ADD8E6 | rgb(173, 216, 230) | |
LightCoral | #F08080 | rgb(240, 128, 128) | |
LightCyan | #E0FFFF | rgb(224, 255, 255) | |
LightGoldenRodYellow | #FAFAD2 | rgb(250, 250, 210) | |
LightGray | #D3D3D3 | rgb(211, 211, 211) | |
LightGreen | #90EE90 | rgb(144, 238, 144) | |
LightPink | #FFB6C1 | rgb(255, 182, 193) | |
LightSalmon | #FFA07A | rgb(255, 160, 122) | |
LightSeaGreen | #20B2AA | rgb(32, 178, 170) | |
LightSkyBlue | #87CEFA | rgb(135, 206, 250) | |
LightSlateGray | #778899 | rgb(119, 136, 153) | |
LightSteelBlue | #B0C4DE | rgb(176, 196, 222) | |
LightYellow | #FFFFE0 | rgb(255, 255, 224) | |
Lime | #00FF00 | rgb(0, 255, 0) | |
LimeGreen | #32CD32 | rgb(50, 205, 50) | |
Linen | #FAF0E6 | rgb(250, 240, 230) | |
Magenta | #FF00FF | rgb(255, 0, 255) | |
Maroon | #800000 | rgb(128, 0, 0) | |
MediumAquaMarine | #66CDAA | rgb(102, 205, 170) | |
MediumBlue | #0000CD | rgb(0, 0, 205) | |
MediumOrchid | #BA55D3 | rgb(186, 85, 211) | |
MediumPurple | #9370DB | rgb(147, 112, 219) | |
MediumSeaGreen | #3CB371 | rgb(60, 179, 113) | |
MediumSlateBlue | #7B68EE | rgb(123, 104, 238) | |
MediumSpringGreen | #00FA9A | rgb(0, 250, 154) | |
MediumTurquoise | #48D1CC | rgb(72, 209, 204) | |
MediumVioletRed | #C71585 | rgb(199, 21, 133) | |
MidnightBlue | #191970 | rgb(25, 25, 112) | |
MintCream | #F5FFFA | rgb(245, 255, 250) | |
MistyRose | #FFE4E1 | rgb(255, 228, 225) | |
Moccasin | #FFE4B5 | rgb(255, 228, 181) | |
NavajoWhite | #FFDEAD | rgb(255, 222, 173) | |
Navy | #000080 | rgb(0, 0, 128) | |
OldLace | #FDF5E6 | rgb(253, 245, 230) | |
Olive | #808000 | rgb(128, 128, 0) | |
OliveDrab | #6B8E23 | rgb(107, 142, 35) | |
Orange | #FFA500 | rgb(255, 165, 0) | |
OrangeRed | #FF4500 | rgb(255, 69, 0) | |
Orchid | #DA70D6 | rgb(218, 112, 214) | |
PaleGoldenRod | #EEE8AA | rgb(238, 232, 170) | |
PaleGreen | #98FB98 | rgb(152, 251, 152) | |
PaleTurquoise | #AFEEEE | rgb(175, 238, 238) | |
PaleVioletRed | #DB7093 | rgb(219, 112, 147) | |
PapayaWhip | #FFEFD5 | rgb(255, 239, 213) | |
PeachPuff | #FFDAB9 | rgb(255, 218, 185) | |
Peru | #CD853F | rgb(205, 133, 63) | |
Pink | #FFC0CB | rgb(255, 192, 203) | |
Plum | #DDA0DD | rgb(221, 160, 221) | |
PowderBlue | #B0E0E6 | rgb(176, 224, 230) | |
Purple | #800080 | rgb(128, 0, 128) | |
Red | #FF0000 | rgb(255, 0, 0) | |
RosyBrown | #BC8F8F | rgb(188, 143, 143) | |
RoyalBlue | #4169E1 | rgb(65, 105, 225) | |
SaddleBrown | #8B4513 | rgb(139, 69, 19) | |
Salmon | #FA8072 | rgb(250, 128, 114) | |
SandyBrown | #F4A460 | rgb(244, 164, 96) | |
SeaGreen | #2E8B57 | rgb(46, 139, 87) | |
SeaShell | #FFF5EE | rgb(255, 245, 238) | |
Sienna | #A0522D | rgb(160, 82, 45) | |
Silver | #C0C0C0 | rgb(192, 192, 192) | |
SkyBlue | #87CEEB | rgb(135, 206, 235) | |
SlateBlue | #6A5ACD | rgb(106, 90, 205) | |
SlateGray | #708090 | rgb(112, 128, 144) | |
Snow | #FFFAFA | rgb(255, 250, 250) | |
SpringGreen | #00FF7F | rgb(0, 255, 127) | |
SteelBlue | #4682B4 | rgb(70, 130, 180) | |
Tan | #D2B48C | rgb(210, 180, 140) | |
Teal | #008080 | rgb(0, 128, 128) | |
Thistle | #D8BFD8 | rgb(216, 191, 216) | |
Tomato | #FF6347 | rgb(255, 99, 71) | |
Turquoise | #40E0D0 | rgb(64, 224, 208) | |
Violet | #EE82EE | rgb(238, 130, 238) | |
Wheat | #F5DEB3 | rgb(245, 222, 179) | |
White | #FFFFFF | rgb(255, 255, 255) | |
WhiteSmoke | #F5F5F5 | rgb(245, 245, 245) | |
Yellow | #FFFF00 | rgb(255, 255, 0) | |
YellowGreen | #9ACD32 | rgb(154, 205, 50) |
Aufgabe 1 – Drei Schreibweisen, eine Farbe
Zeit: ca. 7 Minuten
Dieselbe Farbe lässt sich auf mehrere Arten schreiben. Du findest heraus, welche Zahlen hinter dem Namen tomato stecken.
Lege farben.html an (Inhalt des body, das style-Element gehört in den head):
<p class="kasten a">Farbname</p>
<p class="kasten b">HEX</p>
<p class="kasten c">RGB</p>
- Schreibe Regeln für
.kasten(padding: 20px;undcolor: white;) und gib.adie Hintergrundfarbetomato. - Öffne die Entwicklerwerkzeuge (F12), klicke den ersten Absatz an und klicke in der Regel auf das kleine Farbquadrat neben
tomato. Lies den HEX-Wert und die RGB-Zahlen ab. - Trage die HEX-Schreibweise bei
.bund die RGB-Schreibweise bei.cein. Sage voraus: Wie sehen die drei Kästen aus? Prüfe es. - Setze bei
.cden ersten RGB-Wert (Rot) auf0. Sage voraus, was passiert, und prüfe es.
Kontrolle: Alle drei Kästen sind gleich rot. Ohne Rotanteil wird der dritte Kasten dunkel blaugrün.
Der vierte Kasten (.d) zeigt Schritt 4. tomato ist #ff6347, also rgb(255, 99, 71): Rot 255 (ff), Grün 99 (63), Blau 71 (47). Ohne Rot bleiben nur Grün und Blau übrig, das ergibt ein dunkles Blaugrün.
Rahmen (border)
Mit border zeichnest du eine Linie um ein Element. Die Kurzschreibweise besteht aus Breite, Linienart und Farbe:
<p class="r solid">solid</p>
<p class="r dashed">dashed</p>
<p class="r dotted">dotted</p>
<p class="r double">double</p>
.r { padding: 8px; }
.solid { border: 3px solid seagreen; }
.dashed { border: 3px dashed seagreen; }
.dotted { border: 3px dotted seagreen; }
.double { border: 6px double seagreen; }
Du kannst auch einzelne Seiten gestalten (border-top, border-right, border-bottom, border-left) und die Ecken mit border-radius runden. Der Wert 50% macht aus einem Quadrat einen Kreis.
<p class="t">Nur unten eine Linie</p>
<p class="k">Abgerundete Ecken</p>
.t { border-bottom: 3px solid crimson; padding: 8px; }
.k { border: 2px solid seagreen; border-radius: 12px; padding: 8px; }
solid, dashed, …) zeichnet der Browser keinen Rahmen, auch wenn Breite und Farbe stehen. border: 3px red; ist wirkungslos.Innenabstand und Außenabstand
Jedes Element hat zwei Arten von Abstand. padding ist der Innenabstand zwischen Inhalt und Rahmen, der Hintergrund füllt ihn mit. margin ist der Außenabstand um den Rahmen herum und immer durchsichtig.
<div class="a">padding: 24px</div>
<div class="b">margin: 24px</div>
<div class="c">Nachbar</div>
div { border: 2px solid seagreen; background-color: #e6f4ec; }
.a { padding: 24px; }
.b { margin: 24px; }
Beide Eigenschaften gibt es für jede Seite einzeln (padding-top, margin-left, …) und als Kurzschreibweise. Die Werte der Kurzschreibweise gehen im Uhrzeigersinn herum, beginnend oben:
| Werte | Beispiel | Bedeutung |
|---|---|---|
| 1 | margin: 10px; | alle vier Seiten |
| 2 | margin: 10px 20px; | oben und unten 10, links und rechts 20 |
| 3 | margin: 10px 20px 30px; | oben 10, links und rechts 20, unten 30 |
| 4 | margin: 10px 20px 30px 40px; | oben, rechts, unten, links |
body von Haus aus 8 px Außenabstand. Deshalb liegt eine Seite nie ganz am Rand des Fensters an.Das Box-Modell
Für den Browser ist jedes Element eine Schachtel. Von innen nach außen besteht sie aus Inhalt, Innenabstand (padding), Rahmen (border) und Außenabstand (margin).
Mit width legst du die Breite des Inhalts fest. Innenabstand, Rahmen und Außenabstand kommen dazu. Das überrascht: Eine Box mit width: 300px und padding: 20px ist insgesamt 340 px breit.
Das ändert die Einstellung box-sizing: border-box;. Dann zählt width bis zur Außenkante des Rahmens, und der Inhalt schrumpft entsprechend. Dasselbe Beispiel, links ohne und rechts mit border-box:
<div class="box a">content-box (Standard)</div>
<div class="box b">border-box</div>
.box { width: 200px; padding: 20px; border: 5px solid seagreen; background-color: #e6f4ec; margin-bottom: 8px; }
.b { box-sizing: border-box; }
Weil das ungewohnte Rechnen nervt, schreiben fast alle Entwickler am Anfang ihres Stylesheets diese Regel. Der Stern * steht für alle Elemente:
* {
box-sizing: border-box;
}
| Bestandteil | zählt bei width mit (Standard) | zählt bei width mit (border-box) |
|---|---|---|
| Inhalt | ja, bestimmt width | ja, der Rest nach Abzug |
padding | nein, kommt dazu | ja |
border | nein, kommt dazu | ja |
margin | nein | nein |
Aufgabe 2 – Wie breit ist die Box?
Zeit: ca. 8 Minuten
Eine Box hat width: 300px;, padding: 20px;, border: 5px solid darkslategray; und margin: 10px;. Rechne zuerst, dann prüfe.
- Berechne, wie breit die Box samt Innenabstand und Rahmen ist, und wie viel Platz sie mit dem Außenabstand in der Zeile belegt.
- Lege
box-breite.htmlan und prüfe die Rechnung. Fahre dazu in den Entwicklerwerkzeugen (Reiter „Elemente“) mit der Maus über das Element: Der Browser färbt Inhalt, Innenabstand, Rahmen und Außenabstand ein und zeigt die Maße. - Füge
box-sizing: border-box;hinzu. Wie breit ist die Box jetzt, und wie viel Platz belegt sie?
Kontrolle: Ohne border-box sind es 350 px und 370 px, mit border-box 300 px und 320 px.
Übungsaufgaben
Die Aufgaben 3 bis 6 sind der Kern und dauern zusammen etwa 45 Minuten. Du arbeitest wieder an deiner Projektseite. Sage bei jeder Aufgabe zuerst voraus, was passiert, und prüfe es dann. Wer früher fertig ist, macht die Bonusaufgaben.
Aufgabe 3 – Tourenkarten für die Projektseite
Zeit: ca. 12 Minuten
Auf deiner Projektseite sollen drei Touren als Karten erscheinen. Alle Farben schreibst du ab jetzt als HEX-Wert (#rrggbb) oder hsl(), keine Farbnamen mehr.
Ergänze in index.html (zum Beispiel unter deiner Einleitung):
<h2>Unsere Touren</h2>
<div class="tour">
<h3>Bergsee-Runde</h3>
<p>Gehzeit: 2 Stunden</p>
<p>Schwierigkeit: leicht</p>
</div>
<div class="tour schwer">
<h3>Gipfeltour</h3>
<p>Gehzeit: 5 Stunden</p>
<p>Schwierigkeit: schwer</p>
</div>
<div class="tour">
<h3>Klamm-Wanderung</h3>
<p>Gehzeit: 1 Stunde</p>
<p>Schwierigkeit: mittel</p>
</div>
- Gestalte
.tourinstyle.css: Hintergrundfarbe als HEX-Wert, Rahmen2px solidin einer dunkleren Farbe, abgerundete Ecken (border-radius), Innenabstand 16 px und 20 px Außenabstand nach unten. - Die schwere Tour soll auffallen. Gib ihr über eine zweite Klasse
schwereinen dicken roten linken Rahmen (border-left: 8px solid crimson;). - Verschiebe die Regel
.schwerüber die Regel.tour. Sage voraus, was mit dem linken Rand passiert, prüfe es und erkläre es in einem Satz.
Kontrolle: Drei Karten mit Abstand untereinander, nur die mittlere hat links einen dicken roten Rand. Steht .schwer über .tour, sieht der linke Rand wieder aus wie die anderen, weil .tour später kommt und bei gleichem Rang gewinnt.
Steht .schwer über .tour, überschreibt .tour (border: 2px solid ...) den linken Rand wieder. Beide Selektoren sind Klassen und haben denselben Rang, deshalb entscheidet die Reihenfolge. Die vollständige Datei steht unter Aufgabe 6.
Aufgabe 4 – Abstände ohne Überraschung
Zeit: ca. 8 Minuten
Zwischen zwei Absätzen ist margin-bottom: 30px und margin-top: 20px eingestellt. Sage voraus, wie groß der Abstand zwischen den Absätzen ist.
abstaende.html (Inhalt des body):
<p class="oben">Absatz oben</p>
<p class="unten">Absatz unten</p>
- Schreibe deine Vorhersage auf: 20 px, 30 px oder 50 px? Gib beiden Absätzen eine Hintergrundfarbe, damit du die Lücke siehst, und prüfe die Vorhersage. Miss den Abstand mit den Entwicklerwerkzeugen.
- Stelle
margin-topdes unteren Absatzes auf 40 px. Sage voraus, wie groß der Abstand jetzt ist, und prüfe es. - Gib beiden Absätzen zusätzlich
padding: 10px;. Wird dadurch der Abstand zwischen den farbigen Flächen größer, kleiner oder bleibt er gleich?
Kontrolle: Erst 30 px, dann 40 px: Die beiden Außenabstände werden nicht addiert, es gilt der größere. Das padding macht die Flächen höher, der Abstand dazwischen bleibt.
Aufgabe 5 – Das Gerüst der Projektseite
Zeit: ca. 15 Minuten
Deine Projektseite hat bisher header, main, einen Abschnitt section und footer. Jetzt bekommen diese Bereiche Farben und Abstände.
- Lege am Anfang von
style.cssdie Regel* { box-sizing: border-box; }an. header: dunkle Hintergrundfarbe als HEX-Wert, weiße Schrift,padding: 20px;, Text zentriert.- Am Rand der Seite siehst du einen weißen Streifen. Finde mit den Entwicklerwerkzeugen heraus, woher er kommt, und entferne ihn.
mainbekommt 20 px Innenabstand. Dersectionmit den Quellen bekommt oben eine Linie (border-top) und darüber 20 px Außenabstand.footer: hellere Hintergrundfarbe,border-top, 15 px Innenabstand, Text zentriert.- Die Links in
navbekommen weiße Schrift, keine Unterstreichung undpadding: 0 12px;, damit sie nicht aneinander kleben.
Tipp: Der weiße Streifen ist der Standard-Außenabstand von body (8 px). Mit margin: 0 am body verschwindet er.
Kontrolle: Der Kopfbereich geht bis an den Rand des Fensters. Es gibt keinen weißen Streifen mehr, und die Navigationslinks haben sichtbar Platz zueinander.
Die weiße Kante ist der Standard-Außenabstand des body von 8 px. Die vollständige Datei steht unter Aufgabe 6.
Aufgabe 6 – Eine Palette aus einem Farbton
Zeit: ca. 10 Minuten
Gute Farbpaletten bestehen aus einem Farbton in verschiedenen Helligkeiten. Mit hsl(farbton, sättigung, helligkeit) geht das besonders einfach: Du änderst nur die dritte Zahl.
- Ersetze alle Farben in
style.cssdurchhsl()-Werte mit demselben Farbton, zum Beispiel210(Blau): Kopfbereich Helligkeit 25 %, Rahmen und Linien 45 %, Tourenkarten 92 %, Seitenhintergrund 97 %. Sättigung 50 %. - Die Textfarbe der Seite ist ein sehr dunkles
hsl(210, 30%, 15%). - Schreibe einen Kommentar, in dem steht, wie man die ganze Seite grün macht. Probiere es aus: Ändere in allen Werten nur den Farbton, zum Beispiel auf
140. - Bleibt der Text überall gut lesbar? Prüfe vor allem die weiße Schrift im Kopfbereich.
Kontrolle: Die Seite ist komplett blau, nach der Änderung der ersten Zahl komplett grün. Kein HEX-Wert und kein Farbname ist übrig.
Fertige Fassung der style.css mit Farbton 210. Für Grün ersetzt du überall 210 durch 140.
Bonus für Schnelle
Bonusaufgabe 1 – Durchsichtig: rgba oder opacity?
Es gibt zwei Wege, etwas durchsichtig zu machen, und sie verhalten sich unterschiedlich. rgba(r, g, b, a) ist wie rgb(), hat aber einen vierten Wert für die Deckkraft (0 bis 1). opacity gilt für das ganze Element.
Lege bonus-transparenz.html an: ein div mit dunkelgrünem Hintergrund, goldenem Rahmen und 40 px Innenabstand, darin ein Absatz mit großer Schrift (28 px) und 16 px Innenabstand.
- Gib dem Absatz
background-color: rgba(255, 255, 255, 0.6);. Sage voraus, ob der Text ebenfalls durchsichtig wird, und prüfe es. - Ersetze die Regel durch
background-color: white;undopacity: 0.6;. Was ist jetzt anders? - Formuliere in einem Satz, wann du welche Variante nimmst.
Kontrolle: Mit rgba bleibt der Text schwarz und gut lesbar, nur der Hintergrund ist durchsichtig. Mit opacity wird auch der Text blass.
rgba für durchscheinende Hintergründe, opacity nur, wenn das ganze Element samt Inhalt verblassen soll.
Bonusaufgabe 2 – Ein rundes Abzeichen
Mit border-radius: 50% wird aus einem Quadrat ein Kreis. Daraus baust du ein Abzeichen für eine Wandertour.
- Lege
bonus-abzeichen.htmlan: eindivmit 120 px Breite und Höhe,box-sizing: border-box, Hintergrund dunkelgrün, weiße zentrierte Schrift (24 px) und dem Text „1000 m“. - Mache einen Kreis daraus und gib ihm einen goldenen Rahmen
8px double gold. - Der Text klebt oben im Kreis. Rücke ihn mit
padding-topin die Mitte. Rechne vorher, welcher Wert ungefähr passt.
Kontrolle: Ein Kreis mit doppelter goldener Linie, der Text liegt etwa in der Mitte. Mit border-radius: 20px würde daraus ein Quadrat mit runden Ecken.
- Farben schreibst du als Name,
#rrggbb(HEX),rgb(r, g, b)oderhsl(farbton, sättigung, helligkeit).colorfärbt den Text,background-colorden Hintergrund. border: 2px solid farbe;besteht aus Breite, Linienart und Farbe. Ohne Linienart gibt es keinen Rahmen.border-radiusrundet die Ecken.paddingist der Abstand innen (zwischen Inhalt und Rahmen),marginder Abstand außen. Bei der Kurzschreibweise gehen die Werte im Uhrzeigersinn: oben, rechts, unten, links.- Eine Box besteht von innen nach außen aus Inhalt,
padding,borderundmargin. Mitbox-sizing: border-boxzähltwidthbis zur Außenkante des Rahmens. - Senkrechte Außenabstände zweier Blöcke addieren sich nicht, es gilt der größere. Der
bodyhat standardmäßig 8 pxmargin.
