Gestalte deine Seite
Jetzt bist du an der Reihe: Du schreibst das ganze Stylesheet selbst.
Deine Seite oder unsere? Im Editor findest du wieder unsere Seite des Katzenhauses. Wenn du lieber deine eigene Seite aus dem HTML-Kurs gestalten möchtest, markiere den ganzen Code in index.html und füge den Code deiner Seite darüber ein. Oben in style.css steht unser Beispielplan: Ersetze ihn durch deinen.
Die Anweisungen sind eine Checkliste von allem, was dein Stylesheet enthalten muss, und sie werden von oben nach unten geprüft: Bei jedem Klick auf „Ausführen“ stoppen die Prüfungen beim ersten Punkt, der noch nicht erledigt ist. Du kannst deinen Code also jederzeit ausführen, um zu sehen, welcher Punkt als Nächstes kommt. Die Prüfungen betrachten nur, welche CSS-Funktionen du verwendest und dass sie Elemente deiner Seite gestalten, nie die konkreten Farben, Schriften oder Größen.
Text und Farben. Verknüpfe zuerst style.css mit der Seite. Beginne dann mit der Regel für body: der Schrift, der Textfarbe und der Hintergrundfarbe. Die Elemente in body erben die Schrift und die Textfarbe, diese eine Regel verändert also die ganze Seite. Für eine Webschrift wähle eine Schrift auf Google Fonts, lass dir von der Seite den Einbettungscode zeigen („Get embed code“) und kopiere die link-Elemente in head, genau wie in der Lektion über Text und Schriften. Gib Schriftgrößen in rem an, damit sie die Textgröße respektieren, die der Besucher im Browser eingestellt hat.
Boxen und Abstände. Die Regel * { box-sizing: border-box; } sorgt dafür, dass die Breite jedes Elements sein Padding und seinen Rahmen einschließt, sodass sich Größen leichter berechnen lassen. Text, der über die ganze Breite eines breiten Bildschirms läuft, ist schwer zu lesen, setze den Inhalt also in eine Spalte in der Mitte der Seite. Verwende dafür diesmal max-width (die maximale Breite) statt width: Das Element ist so breit, wie Platz da ist, aber nie breiter als der angegebene Wert. Auf einem großen Bildschirm wird daraus eine schmale Spalte, und auf einem Handy schrumpft sie auf die Bildschirmbreite.
main {
max-width: 50rem;
margin: 0 auto;
}Ist die Vorschau schmaler als die max-width, füllt die Spalte sie einfach aus. Füge dann Abstände hinzu: padding innerhalb der Boxen, etwa des Kopfbereichs oder der Karten, und margin zwischen ihnen. Abgerundete Ecken (border-radius) geben Karten, Knöpfen oder Bildern ein weicheres Aussehen.
Klassen. Auf unserer Seite haben die Karten die Klasse karte, und das Element, das sie enthält, hat die Klasse karten. Wenn du deine eigene Seite gestaltest, füge Elementen, die ein eigenes Aussehen bekommen sollen, das Attribut class hinzu.
Layout. Flexbox ist für Elemente in einer Zeile gedacht, etwa die Links der Navigation, und das Grid für Zeilen und Spalten gleichzeitig, etwa die Karten. Hat deine eigene Seite nichts dergleichen, füge es hinzu: zum Beispiel eine nav im header mit Links zu den Teilen deiner Seite oder ein paar kurze Boxen (div-Elemente mit einer Klasse) mit Fakten zu deinem Thema. Mit Flexbox kannst du auch die Teile des Formulars aus dem HTML-Kurs in eine Zeile setzen.
Der letzte Schliff. Lass zum Schluss etwas passieren, wenn die Maus darüber ist, zum Beispiel bei den Links oder den Karten.
Tipp: Dein Code wird nicht gespeichert, wenn du diese Übung verlässt. Wenn alles abgehakt ist, sichere ihn: Lege auf deinem Computer einen Ordner an und speichere in einem Texteditor den Code von index.html darin als Datei index.html und den Code von style.css als Datei style.css. In der nächsten Übung erfährst du, warum beide Dateien im selben Ordner liegen müssen und wie du die Seite öffnest.
So schreibst du es:
Anweisungen
- 1
Verknüpfe das Stylesheet: Füge in
index.htmlinhead<link rel="stylesheet" href="style.css">hinzu. - 2
Lege eine Regel für
bodyan, diefont-familyauf eine Liste von Schriften setzt, die mit einer generischen Schriftfamilie endet (serif,sans-serifodermonospace), z. B.Verdana, sans-serif. - 3
Wähle eine Schrift auf Google Fonts und kopiere ihre
link-Elemente inheadinindex.html. Die Adresse des Stylesheets der Schrift beginnt mithttps://fonts.googleapis.com/. - 4
Verwende die Schrift von Google Fonts in
font-family: für die ganze Seite in der Regel fürbody, vor der generischen Schriftfamilie (z. B."Nunito", sans-serif), oder nur für die Überschriften. - 5
Lege in der Regel für
bodydie Textfarbe (color) und die Hintergrundfarbe (background-color) der Seite fest. - 6
Verwende die Einheit
remfür eine Größe, z. B. für die Schriftgröße der Überschriften:h1 { font-size: 2.5rem; }. - 7
Lege eine Regel für alle Elemente (
*) an, diebox-sizing: border-boxsetzt. - 8
Setze den Inhalt in eine Spalte in der Mitte der Seite: Gib dem Element, das ihn enthält (z. B.
main), einemax-widthundmargin: 0 auto. - 9
Füge Abstände hinzu: Gib einem beliebigen Element ein
paddinggrößer als null (z. B. dem Kopfbereich oder den Karten) und einem beliebigen Element einenmargingrößer als null (z. B. unter den Überschriften). - 10
Gestalte einige Elemente mit einem Klassenselektor: In
index.htmlhaben sie das Attributclass(z. B.class="karte"), undstyle.csshat eine Regel für diese Klasse (z. B..karte). - 11
Runde die Ecken eines Elements mit
border-radiusab, z. B. die der Karten oder des Bildes. - 12
Ordne mindestens zwei Elemente mit Flexbox in einer Zeile an: Gib ihrem Elternelement
display: flex, z. B. dernavmit den Links. - 13
Ordne mindestens zwei Elemente in einem Grid an: Gib ihrem Elternelement
display: gridundgrid-template-columns, z. B.repeat(2, 1fr)für die Karten. - 14
Füge eine Regel mit
:hoverhinzu, die das Aussehen eines Elements ändert, wenn die Maus darüber ist, z. B.nav a:hover.