Arbeit an Informatikprojekten
Webdokumente: HTML und CSS verstehen
Warum eine Webseite aus zwei getrennten Teilen besteht: Struktur und Bedeutung im HTML, Aussehen im CSS.
Benötigte Grundlagen
Dieses Vorwissen brauchst du für das Kapitel. Schau kurz nach, wenn dir etwas davon nicht mehr präsent ist, sonst leg direkt los.
Einführung
Wenn du im Browser die Seitenquelle anzeigen lässt, siehst du keinen Text mit Schriftgrößen, sondern eine Menge spitzer Klammern.
Der Grund dafür ist eine Entscheidung, die vor über dreißig Jahren getroffen wurde und die sich bis heute bewährt: Eine Webseite sagt nicht, wie etwas aussehen soll, sondern was es ist. Ob eine Überschrift groß und blau erscheint, wird an einer ganz anderen Stelle festgelegt.
Diese Trennung wirkt zunächst umständlich. Sie ist der Grund dafür, dass dieselbe Seite auf einem Telefon, einem Fernseher und in einem Vorleseprogramm für blinde Menschen funktioniert.
Das kannst du nach diesem Kapitel
erklären, warum Struktur und Gestaltung einer Webseite getrennt werden.
den Aufbau eines HTML-Elements aus Start-Tag, Inhalt und End-Tag beschreiben.
ein einfaches Webdokument mit Überschriften, Absätzen, Listen, Verweisen und Bildern aufbauen.
mit CSS über Selektor und Eigenschaft das Aussehen festlegen.
beschreiben, wie ein Webdokument getestet und im Netz veröffentlicht wird.
Die Grundentscheidung
Eine Webseite besteht aus zwei getrennten Teilen:
- HTML beschreibt die Struktur und die Bedeutung: Das hier ist eine Überschrift, das ein Absatz, das eine Liste, das ein Verweis.
- CSS beschreibt das Aussehen: Überschriften sind 24 Pixel groß und dunkelblau, Absätze haben 1,5-fachen Zeilenabstand.
Warum trennt man das? Drei Gründe, und jeder allein würde schon genügen.
Erstens: eine Änderung an einer Stelle. Bei 200 Seiten mit je 30 Überschriften stünde die Farbangabe 6000 Mal im Dokument. Eine Farbänderung wäre 6000 Änderungen. Steht sie im CSS, ist es eine.
Zweitens: verschiedene Ausgabegeräte. Dieselbe Struktur wird auf einem Telefon anders dargestellt als auf einem großen Bildschirm und beim Drucken noch einmal anders. Das geht nur, wenn die Darstellung nicht fest im Dokument steht.
Drittens, und didaktisch am wichtigsten: Maschinen können den Inhalt verstehen. Ein Vorleseprogramm für blinde Menschen kann sagen „Überschrift Ebene 2: Ergebnisse“, wenn dort eine Überschrift ausgezeichnet ist. Steht dort nur „fetter Text in 20 Pixel“, weiß es nichts. Dasselbe gilt für Suchmaschinen.
Daraus folgt die wichtigste Regel für eigene Seiten: Wähle das Element nach der Bedeutung, nicht nach dem Aussehen. Eine Überschrift wird als Überschrift ausgezeichnet, weil sie eine ist, nicht weil sie groß aussehen soll.
HTML und CSS
Die letzte Zeile beantwortet die Frage, die sonst offenbleibt: Warum trennt man das überhaupt? Weil die beiden nicht gleichrangig sind. HTML ist die Substanz, CSS die Gestaltung, und deshalb kann dieselbe Seite auf dem Handy anders aussehen als am Rechner, ohne dass jemand ihren Inhalt zweimal schreiben müsste.
Wie ein HTML-Element aufgebaut ist
Ein Element besteht meist aus drei Teilen:
<p>Das ist ein Absatz.</p>
Das ist der Start-Tag, dazwischen steht der Inhalt, und ist der End-Tag mit dem Schrägstrich. Elemente dürfen ineinander liegen, müssen sich aber sauber schachteln: Was zuletzt geöffnet wurde, wird zuerst geschlossen.
Ein Start-Tag kann Attribute tragen, also zusätzliche Angaben in der Form Name gleich Wert:
<a href="seite2.html">Weiter zur zweiten Seite</a>
<img src="bild.jpg" alt="Blick auf den Schulhof">
Das Attribut beim Bild ist keine Nebensache: Es enthält die Bildbeschreibung, die vorgelesen wird und die erscheint, wenn das Bild nicht geladen werden kann.
Das Grundgerüst
Jedes Webdokument hat denselben Rahmen:
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="utf-8">
<title>Meine Seite</title>
<link rel="stylesheet" href="stil.css">
</head>
<body>
<h1>Willkommen</h1>
<p>Der erste Absatz.</p>
</body>
</html>
Zwei Angaben im Kopf verdienen eine Erklärung, weil sie direkt an frühere Kapitel anschließen:
sagt dem Browser, nach welcher Vereinbarung die als Zeichen zu lesen sind. Fehlt sie, erscheinen Umlaute als seltsame Zeichenpaare, und zwar genau aus dem Grund, den das Kapitel zur Nachrichtenübertragung beschreibt: Die sind unverändert, die ist falsch.
nennt die Sprache. Ein Vorleseprogramm wählt danach die Aussprache aus.
Das Grundgerüst als Baum
Die Einrückung im Quelltext ist kein Schönheitsdienst, sondern dieselbe wie dieser Baum: Was eingerückt steht, steht im Element darüber drin. Und die Aufteilung ganz oben entscheidet über die Sichtbarkeit, <title> hängt am Kopf und erscheint nur im Reiter des Browsers, <h1> hängt am Körper und steht auf der Seite. Zwei Zeilen, die fast gleich aussehen, landen an völlig verschiedenen Orten.
Die wichtigsten Elemente
| Element | Bedeutung |
|---|---|
| bis | Überschriften von der wichtigsten bis zur untergeordneten |
| Absatz | |
| mit | Liste ohne Reihenfolge, mit Punkten |
| mit | Liste mit Reihenfolge, nummeriert |
| Verweis auf eine andere Adresse | |
| Bild | |
| , , | Tabelle, Zeile, Zelle |
| inhaltlich wichtig |
Beachte die Überschriftenebenen: Sie bilden eine Gliederung und werden nicht nach Größe gewählt. Auf eine folgt eine , nicht gleich eine , nur weil die kleiner aussieht.
Vom Quelltext zur sichtbaren Seite
Vergleiche Zeile für Zeile: Jedes Element im Quelltext wird zu genau einem Ding im Fenster, in derselben Reihenfolge. Die spitzen Klammern selbst erscheinen nirgends, sie sagen dem Browser, was etwas ist, und verschwinden dann. Genau deshalb heißt HTML eine Auszeichnungs- und keine Programmiersprache.
CSS: Selektor und Eigenschaften
Eine CSS-Regel besteht aus zwei Teilen: Der Selektor sagt, welche Elemente gemeint sind, und in den geschweiften Klammern stehen die Eigenschaften mit ihren Werten.
h1 {
color: darkblue;
font-size: 32px;
}
p {
line-height: 1.5;
}
Gelesen: „Alle Überschriften erster Ebene sind dunkelblau und 32 Pixel groß. Alle Absätze haben eineinhalbfachen Zeilenabstand.“
Der Gewinn ist derselbe wie bei den : Eine Änderung an einer Stelle wirkt überall. Wenn die Überschriften grün werden sollen, ändert man ein Wort, nicht 6000.
Dasselbe HTML, zwei Stylesheets
Das HTML aus dem vorigen Bild ist unverändert, beide Fenster zeigen dieselben drei Elemente in derselben Reihenfolge. Geändert hat sich nur die CSS-Datei, und schon steht die Überschrift größer, mittig und in einer anderen Farbe. Das ist der ganze Gewinn der Trennung: Aussehen ändern, ohne den Inhalt anzufassen.
Testen und veröffentlichen
Testen heißt bei Webdokumenten mehr als „sieht gut aus“:
- Im Browser ansehen und alle Verweise anklicken. Ein Tippfehler im Dateinamen fällt sonst niemandem auf.
- Bei verschiedenen Fensterbreiten prüfen, mindestens schmal wie ein Telefon und breit wie ein Bildschirm.
- Den Quelltext prüfen lassen, etwa mit einem Prüfprogramm. Browser sind sehr nachsichtig und stellen auch fehlerhaftes HTML dar; ein anderer Browser tut das vielleicht anders.
- Ohne Bilder ansehen: Erscheinen die Beschreibungen aus dem -Attribut?
Veröffentlichen heißt, die auf einen Webserver zu legen, der über eine Adresse erreichbar ist. Dazu gehören mehrere Schritte: Die Dateien werden übertragen, eine Adresse wird auf den verwiesen, und für die Startseite gilt eine Namensvereinbarung. Für ein Schulprojekt genügt oft der Schulserver oder eine Netzwerkfreigabe.
Vor jeder Veröffentlichung gehören zwei Fragen dazu, die nichts mit Technik zu tun haben: Habe ich die Rechte an allen Bildern und Texten? Und stehen dort personenbezogene , die dort nicht hingehören? Beides ist in einem späteren Kapitel ausführlich Thema und gilt trotzdem ab dem ersten eigenen Webdokument.
Eine kleine Seite aufbauen
Schreibe ein Webdokument mit einer Überschrift, einem Absatz, einer dreigliedrigen Liste und einem Verweis.
- 1
Zuerst das Grundgerüst mit Kopf und Körper anlegen. In den Kopf gehören Zeichensatz und Titel, in den Körper der sichtbare Inhalt.
- 2
Dann die Elemente nach ihrer Bedeutung wählen:
<body> <h1>Unsere Klassenfahrt</h1> <p>Wir waren drei Tage im Harz.</p> <ul> <li>Wanderung zum Brocken</li> <li>Besuch im Bergwerk</li> <li>Abend am Lagerfeuer</li> </ul> <a href="bilder.html">Zu den Bildern</a> </body> - 3
Die Liste ist ein , weil die Reihenfolge der Programmpunkte hier keine Aussage trägt. Wäre es ein Ablaufplan, wäre richtig.
- 4
Der Verweis braucht das Attribut mit dem Ziel. Der Text zwischen den Tags ist das, was man anklickt; er sollte das Ziel beschreiben und nicht „hier klicken“ lauten.
- 5
Zum Schluss testen: im Browser öffnen und den Verweis anklicken. Führt er ins Leere, stimmt der Dateiname nicht.
Überschrift, Absatz, ungeordnete Liste und Verweis, jeweils nach Bedeutung ausgewählt.
Warum die Trennung Arbeit spart
Eine Schulhomepage hat 40 Seiten mit zusammen 200 Überschriften. Die Farbe soll von Blau auf Grün wechseln. Vergleiche den Aufwand mit und ohne CSS.
- 1
Ohne CSS, also mit Farbangaben direkt an jeder Überschrift: 200 Stellen müssen geändert werden, verteilt auf 40 .
- 2
Jede einzelne Änderung kann schiefgehen. Bei 200 Handgriffen ist die Wahrscheinlichkeit hoch, dass mindestens eine Überschrift blau bleibt.
- 3
Mit CSS: In der Datei steht einmal die Regel für . Geändert wird ein Wort.
- 4
Damit ist die Änderung nicht nur schneller, sondern auch vollständig: Es kann gar keine Überschrift übersehen werden, weil es nur eine Quelle gibt.
- 5
Der Gedanke ist derselbe wie bei einer im Programm: Ein Wert, der an vielen Stellen gebraucht wird, sollte an genau einer Stelle stehen.
Eine Änderung statt 200, und keine Stelle kann vergessen werden.
Typischer Fehler
„Ich nehme statt , weil mir die Schrift dann besser gefällt.“
Hier wird das Element nach dem Aussehen gewählt, und genau das hebt die Trennung wieder auf, die HTML und CSS erst nützlich macht.
Die Überschriftenebenen sind eine Gliederung, so wie die Nummerierung in einem Inhaltsverzeichnis. Wer nach direkt setzt, behauptet damit, es gebe einen übersprungenen Zwischenpunkt. Ein Vorleseprogramm liest die Ebenen mit vor; für blinde Nutzer entsteht so eine Gliederung mit Löchern, und die Navigation über Überschriften wird unbrauchbar. Suchmaschinen werten dieselbe Struktur aus.
Richtig ist der umgekehrte Weg: Wähle die Ebene nach der Gliederung und stelle die Schriftgröße im CSS ein.
h2 { font-size: 20px; }
Damit stimmt die Bedeutung, und das Aussehen ist trotzdem genau so, wie du es wolltest. Dieselbe Überlegung gilt für Listen, die man nur wegen der Einrückung nimmt, und für Tabellen, die man nur wegen der Anordnung nimmt.
Übung 1
leichtWelches HTML-Element passt?
a) die Hauptüberschrift der Seite b) eine Aufzählung von vier Zutaten, deren Reihenfolge egal ist c) ein Verweis auf eine andere Seite d) ein Foto mit Bildbeschreibung e) die nummerierten Schritte einer Anleitung
Tipp anzeigen
Bei b) und e) entscheidet die Frage, ob die Reihenfolge etwas bedeutet.
Lösung anzeigen
a) b) mit c) mit dem Attribut d) mit den Attributen und e) mit , weil die Reihenfolge hier eine Aussage trägt
Detaillierte Schritterklärung anzeigen
Hier wird jeder Schritt einzeln erklärt, vor allem, warum er gemacht wird.
✦ Empfohlen: Standard – Die normale Erklärungstiefe passt zum Einstieg.
- 1
Die Leitfrage von HTML: Was ist es, nicht wie sieht es aus
HTML beschreibt die Bedeutung eines Textteils, nicht sein Aussehen. Man fragt also nicht „wie soll es aussehen“, sondern „was ist dieser Teil“: eine Überschrift, eine Liste, ein Verweis, ein Bild. Das Aussehen kommt getrennt davon aus CSS.
- 2
a), c) und d): Bedeutung und die nötigen Zusatzangaben
Die Hauptüberschrift ist , der oberste Rang im Dokument. Ein Verweis ist . Er braucht das Attribut , denn ohne Ziel wäre er kein Verweis. Ein Foto ist mit (welches Bild) und (die Beschreibung).
- 3
b) und e): Der Stolperfall, trägt die Reihenfolge eine Aussage?
Vier Zutaten, deren Reihenfolge egal ist, gehören in eine ungeordnete Liste mit . Die nummerierten Schritte einer Anleitung gehören in eine geordnete Liste mit , denn hier bedeutet die Reihenfolge etwas: Schritt 2 vor Schritt 1 wäre falsch.
Übung 2
mittelIm folgenden Ausschnitt stecken drei Fehler:
<h1>Mein Steckbrief
<p>Ich heiße Jonas.</p>
<img src="foto.jpg">
<h3>Meine Hobbys</h3>
a) Finde alle drei und benenne sie. b) Schreibe den Ausschnitt richtig. c) Erkläre, warum der Browser die Seite trotzdem irgendwie anzeigt.
Tipp anzeigen
Achte auf End-Tags, auf Pflichtattribute und auf die Gliederung der Überschriften.
Lösung anzeigen
a) Erstens fehlt das End-Tag . Zweitens fehlt beim Bild das Attribut mit der Bildbeschreibung. Drittens folgt auf direkt ; die Ebene wird übersprungen, obwohl es keinen übergeordneten Zwischenpunkt gibt.
b) Richtig:
<h1>Mein Steckbrief</h1> <p>Ich heiße Jonas.</p> <img src="foto.jpg" alt="Jonas vor dem Schuleingang"> <h2>Meine Hobbys</h2>c) Browser sind bewusst nachsichtig: Sie versuchen, auch fehlerhaftes HTML sinnvoll darzustellen, statt eine Fehlermeldung zu zeigen. Das ist bequem und gefährlich zugleich, denn ein anderer Browser rät möglicherweise anders, und ein Vorleseprogramm kann mit der kaputten Struktur nichts anfangen. Deshalb prüft man den Quelltext mit einem Prüfprogramm, statt sich auf die Anzeige zu verlassen.
Detaillierte Schritterklärung anzeigen
Hier wird jeder Schritt einzeln erklärt, vor allem, warum er gemacht wird.
✦ Empfohlen: Standard – Die normale Erklärungstiefe passt zum Einstieg.
- 1
Systematisch prüfen statt suchen
Bei HTML lohnt eine feste Prüfreihenfolge, weil es immer dieselben drei Fehlerarten sind: fehlende End-Tags, fehlende Pflichtattribute und eine unlogische Gliederung. Man geht die Liste einmal durch, statt den Ausschnitt planlos anzustarren.
Zwischenergebnis
Drei Prüfpunkte: Tags geschlossen? Attribute vollständig? Überschriftenebenen lückenlos?
- 2
Prüfpunkt 1: End-Tags
Jedes Element mit Inhalt braucht ein End-Tag. Man liest den Ausschnitt und hakt Paare ab: hat sein , hat sein . Bei findet sich keines.
Zwischenergebnis
Fehler 1: fehlt.
ist eine Ausnahme: Es hat keinen Inhalt und deshalb auch kein End-Tag. Solche Elemente heißen leere Elemente.
- 3
Prüfpunkt 2: Pflichtattribute
Beim Bild ist vorhanden, es zeigt auf die . Es fehlt aber , die Textbeschreibung. Ohne sie erfährt niemand, der das Bild nicht sehen kann, was darauf zu sehen ist.
Zwischenergebnis
Fehler 2: fehlt.
- 4
Prüfpunkt 3: die Gliederung
Überschriften bilden eine Gliederung wie ein Inhaltsverzeichnis. Nach der Ebene 1 folgt die Ebene 2. Ein Sprung auf Ebene 3 behauptet einen Zwischenpunkt, den es nicht gibt.
Zwischenergebnis
Fehler 3: muss sein.
Übung 3
schwerEine Klasse baut eine Projektseite über den Schulgarten.
a) Entwirf die Gliederung mit Überschriftenebenen für: Titel, drei Themenbereiche und je zwei Unterpunkte. b) Schreibe eine CSS-Regel, die alle Überschriften der zweiten Ebene dunkelgrün und 22 Pixel groß macht. c) Auf einer fremden Seite finden die Schüler ein passendes Foto. Was ist vor der Verwendung zu klären? d) Die Seite zeigt statt Umlauten seltsame Zeichenpaare. Nenne die wahrscheinliche Ursache und ordne sie in das ein.
Tipp anzeigen
Zu d): Welche Angabe im Kopf des Dokuments legt die Leseart der fest?
Lösung anzeigen
a) Gliederung:
h1 Unser Schulgarten h2 Die Beete h3 Gemüse h3 Kräuter h2 Die Tiere h3 Bienen h3 Vögel h2 Der Arbeitsplan h3 Frühjahr h3 Herbst
b) CSS-Regel:
h2 { color: darkgreen; font-size: 22px; }
c) Ob die Verwendung erlaubt ist. Ein Foto ist urheberrechtlich geschützt, auch wenn es frei im Netz zu sehen ist. Zu klären sind: Wer hat es aufgenommen? Steht eine Lizenz dabei, die die Verwendung erlaubt, und unter welchen Bedingungen, etwa mit Namensnennung? Sind Personen darauf zu erkennen, muss zusätzlich deren Einwilligung vorliegen. Ohne geklärte Rechte nimmt man ein eigenes Foto.
d) Wahrscheinlich fehlt die Angabe im Kopf des Dokuments, oder die wurde in einer anderen Zeichencodierung gespeichert als angegeben. Im Sender-Empfänger-Modell ist die betroffen: Die Bytes sind unverändert angekommen, der Browser liest sie nur nach der falschen Vereinbarung. Es liegt also keine Störung im Übertragungsmedium vor.
Detaillierte Schritterklärung anzeigen
Hier wird jeder Schritt einzeln erklärt, vor allem, warum er gemacht wird.
✦ Empfohlen: Standard – Die normale Erklärungstiefe passt zum Einstieg.
- 1
a) Die Gliederung folgt dem Inhalt, nicht dem Aussehen
Überschriftenebenen bilden die Gliederung ab: für den Titel „Unser Schulgarten“, für die drei Themenbereiche (Beete, Tiere, Arbeitsplan) und für die je zwei Unterpunkte. Die Ebene sagt, wie tief etwas im Aufbau steht, nicht, wie groß die Schrift sein soll.
- 2
b) Eine CSS-Regel besteht aus Auswahl und Eigenschaften
Eine CSS-Regel nennt zuerst, wen sie betrifft (den Selektor ), dann in geschweiften Klammern die Eigenschaften mit ihren Werten: und . Sie gilt damit für alle Überschriften der zweiten Ebene auf einen Schlag.
- 3
c) Vor der Verwendung eines fremden Fotos ist die Rechtefrage zu klären
Zu klären ist, ob die Verwendung erlaubt ist. Ein Foto ist urheberrechtlich geschützt, auch wenn es frei im Netz zu sehen ist. Fragen: Wer hat es aufgenommen? Liegt eine Lizenz vor, und unter welchen Bedingungen (etwa Namensnennung)? Sind Personen erkennbar, braucht es zusätzlich deren Einwilligung. Ohne geklärte Rechte nimmt man ein eigenes Foto.
- 4
d) Kaputte Umlaute im Sender-Empfänger-Modell verorten
Wahrscheinlich fehlt die Angabe im Kopf des Dokuments, oder die Datei wurde in einer anderen Zeichencodierung gespeichert als angegeben. Betroffen ist die Decodierung: Die Bytes sind unverändert angekommen, der Browser liest sie nur nach der falschen Vereinbarung. Eine Störung im Übertragungsmedium liegt nicht vor.
Zusammenfassung
Ein Webdokument trennt zwei Dinge: HTML beschreibt Struktur und Bedeutung, CSS beschreibt das Aussehen. Diese Trennung erlaubt Änderungen an einer einzigen Stelle, verschiedene Darstellungen auf verschiedenen Geräten und die maschinelle Auswertung des Inhalts durch Vorleseprogramme und Suchmaschinen. Ein HTML-Element besteht aus Start-Tag, Inhalt und End-Tag und kann im Start-Tag Attribute tragen; Elemente müssen sauber ineinander geschachtelt sein. Die Angabe des Zeichensatzes im Kopf legt fest, nach welcher Vereinbarung die als Zeichen zu lesen sind. Überschriftenebenen bilden eine Gliederung und werden nicht nach Schriftgröße gewählt. Eine CSS-Regel besteht aus Selektor und Eigenschaften. Zum Testen gehören das Anklicken aller Verweise, verschiedene Fensterbreiten, eine Quelltextprüfung und die Ansicht ohne Bilder; vor dem Veröffentlichen sind Urheberrechte und personenbezogene zu klären.


