Seite anzeigenÄltere VersionenLinks hierherCopy this pageFold/unfold allNach oben Diese Seite ist nicht editierbar. Du kannst den Quelltext sehen, jedoch nicht verändern. Kontaktiere den Administrator, wenn du glaubst, dass hier ein Fehler vorliegt. ====== HTML ====== ++++Lernziele| * Grob wissen, was das **Internet** ist. * Wissen, welche Dinge durch die Einführung des Internets revolutioniert wurden und welchen Einfluss dies auf die Gesellschaft hatte. * Wissen, wofür **HTML** steht und was es (nicht) ist. * Das Grundgerüst einer Website mit HTML erstellen können. Zum Beispiel: Was gehört in *head*, was in *body*. * Den Unterschied von Block- und Inline-Elementen beschreiben können. * Die wichtigsten HTML-Elemente kennen und anwenden können. * Für jedes dieser HTML-Elemente wissen, ob es sich um ein Block- oder Inline-Element handelt. * Wissen, wofür **CSS** steht und wozu man es benötigt. * Die Fachbegriffe von CSS kennen. * Mithilfe der wichtigsten CSS-Befehle eine Website stylen können. * Mithilfe von `id` und `class` einzelne resp. ausgewählte Elemente stylen. ++++ **Ziel** dieses Blocks ist, zu verstehen, wie eine Website aufgebaut ist. Dies erreichen wir, indem wir Schritt für Schritt eine Website (nach)bauen. ===== Grundgerüst einer Website ===== [[https://kantonsschuleromanshorn.sharepoint.com/:p:/s/FSInformatik/EUBo3BIntxNFuWaIUKxt7hsBCfrv3LY9060NXsHQ9pP1qg|Präsentation]] **Ziele:** * Visual Studio Code installieren und kennenlernen * Einfaches Grundgerüst der Website erstellen ==== Auftrag I ==== 1. Lade den Editor **Visual Studio Code** (kurz **VSCode**) herunter und installiere diesen: [[https://code.visualstudio.com]] 1. **Erstelle einen Ordner** mit Namen `website_ksr` und speichere an einem passendenden Ort auf deinem Computer. 1. Starte nun VSCode und **öffne** darin diesen Ordner: Datei > Ordner öffnen > Ordner `website_ksr` suchen und öffnen. 1. Klicke auf das Symbole (1) oben links, um den "Explorer" zu öffnen. Darin, also im Feld (2), siehst du alle Dateien und Unterordner, die im geöffneten Ordner vorhanden sind. Mit (3) kannst du darin neue Dateien und Unterordner erstellen. Mit Doppelklick auf eine Datei wird diese im Feld (4) geöffnet. {{ :gf_informatik:web_sca:vscode_index.png?400&nolink |}} 1. Erstelle nun eine **neue Datei**, die *zwingend* den Namen `index.html` haben muss. 1. Öffne nun `index.html` in VSCode und erstelle darin das **Grundgerüst** der Website. Tippe dazu folgendes ab (nicht copy paste):<WRAP classes #id width :code> <code html> <html> <head> <meta charset="UTF-8"> <title>Titel der Website</title> </head> <body> Hier kommt der Inhalt der Website hinein. </body> </html> </code> </WRAP> 1. Verschaffe dir einen **Überblick** über den HTML-Code oben:<WRAP classes #id width :list> * HTML besteht aus vielen **Tags**. Die meisten HTML-Elemente haben einen Start- und einem Endtag. * Der HTML-Körper beginnt mit dem Starttag `<body>` und endet mit dem Endtag `</body>`. Dieser beinhaltet den **Inhalt** der Website, also das, was im Hauptfenster des Browsers angezeigt wird. * Der HTML-Kopf (zwischen `<head>` und `</head>`) beinhaltet Einstellungen und zusätzliche Informationen, die nicht im Hauptfenster des Browsers angezeigt wird, z.B.: * `<title>Titel der Website</title>`: Speichert Titel der Seite, wird in der Titelleiste des Browsers angezeigt * `<meta charset="UTF-8">`: sorgt dafür, dass z.B. Umlaute ä,ö,ü richtig angezeigt werden\\ \\ </WRAP> 1. Gratulation, du hast deine erste Website erstellt! **Öffne** sie nun **im Browser:** Navigiere im Datei Explorer deines Computers (nicht von VSCode) zu deiner Website (also `index.html`) und öffne diese per Doppelklick. Nun sollte die Website im Browser angezeigt werden. {{ :gf_informatik:web_sca:html_tattoo_head_body.png?nolink&300 |}} <box 100% round green|**Tipp: Arbeiten mit VSCode**> Wenn man mit VSCode arbeitet, sollte man *nicht* einzelne Dateien mit Doppelklick öffnen. Besser öffnet man wie oben beschrieben den **ganzen Ordner**. Jetzt kann diesen in der "Explorer"-Ansicht direkt verwalten: Dateien bearbeiten, neue Dateien und Ordner erstellen, ... </box> <box 100% round orange|**Tipp: index.html**> Die Hauptseite jeder Website trägt den Namen `index.html`. Wähle deshalb immer diesen Namen, ganz egal, um was es bei der Website geht. </box> ===== Website erstellen mit HTML ===== **Ziel** dieses Block ist, die wichtigsten **HTML-Elemente** kennenzulernen und mit ihnen eine **Website nachzubauen**. ==== Auftrag II ==== 1. Studiere die **Theorie** unten. **Probiere** alle dort vorgestellten Elemente (ausser `<div>` kurz in deiner HTML-Datei der letzten Aufgabe aus. Ziel hier ist, dass du **selbständig** herausfindest, wie das genau funktioniert. Du kannst dir dafür jede erdenkliche Hilfe holen (Google, KI, ...), aber am Schluss musst du verstehen, wie es funktioniert! 1. Kopiere dann den reinen **Text der Website** in den Body der Datei `index.html`, die du im letzten Kapitel erstellt hast.<WRAP classes #id width :code> ++++Inhalt Website (click me!)| GMS an der Kanti Romanshorn Kanti Romanshorn, die innovative Schule im Grünen. Hier geht es zur echten Website der KSR (https://www.ksr.ch). Überblick Während ihrer vierjährigen Ausbildungszeit an der KSR erleben unsere Schülerinnen und Schüler neben dem regulären Unterricht (Grundlagenfächer ab dem 1. Ausbildungsjahr, Schwerpunktfach zusätzlich ab dem 2. Ausbildungsjahr und Ergänzungsfach ab dem 3. Ausbildungsjahr) Spezialtage und Spezialwochen. Diese dienen, wie auch die Maturaarbeit, zur vertieften Auseinandersetzung mit ausgewählten Themenbereichen. Die gesamte Ausbildung an der Kanti Romanshorn ist ausgerichtet auf die bewusste Förderung der nötigen Kompetenzen, um unsere Schülerinnen und Schüler optimal auf ein späteres Studium, die Arbeitswelt und anspruchsvolle Aufgaben in der Gesellschaft vorzubereiten. Fächer Das Fächerangebot an der KSR ist bewusst sehr breit angelegt. Die Grundlagenfächer sind für alle Schülerinnen und Schüler obligatorisch. Weiter wählen alle Schülerinnen und Schüler jeweils ein Schwerpunkt- und ein Ergänzungsfach. Schwerpunktfächer GMS Ab dem zweiten Ausbildungsjahr setzt das Schwerpunktfach ein. Zur Wahl stehen an unserer Schule folgende Fächer bzw. Fächerkombinationen: Biologie und Chemie Italienisch Latein Physik und Anwendungen der Mathematik Spanisch Wirtschaft und Recht Bildnerisches Gestalten (ab 2021) Ergänzungsfächer GMS Mit dem Start des Ergänzungsfachs im dritten Ausbildungsjahr der Kanti Romanshorn ist die Fächerzusammensetzung komplett. Zur Wahl stehen an unserer Schule folgende Ergänzungsfächer bzw. Fächerkombinationen: Anwendungen der Mathematik Bildnerisches Gestalten Geografie Geschichte Informatik Musik Naturwissenschaften plus (umfasst Projekte aus der Biologie, Chemie und Physik) Philosophie/Ethik Psychologie/Pädagogik Sport Wirtschaft und Recht ++++</WRAP> 1. Lade das **Bild** herunter und kopiere es in den Ordner, in dem sich die `index.html`-Datei befindet: {{ :gf_informatik:web_sca:img_xlarge.jpeg?200 |}} 1. Wende dann dein im Theorieteil gelerntes Wissen über HTML-Elemente an, um den Inhalt der **Website so zu gestalten**, dass diese genau so aussieht wie in der Vorlage: {{ :gf_informatik:web_sca:website_ksr_html.png?200 |}} Achtung: Mache nicht zu viele Schritte auf einmal. Gehe stattdessen **wie folgt vor:** 1. Setze ein **einziges** HTML-Element um (z.B. h1-Überschrift) 1. **Speichere** die HTML-Datei. 1. Zeige die Website im Browser an / **Lade die Website neu**:<WRAP classes #id width :code> * Windows: <kbd>F5</kbd> (Achtung: ev. muss zusätzlich <kbd>Fn</kbd> gedrückt werden) * MacOS: <kbd>⌘ + R</kbd> </WRAP> 1. Stelle sicher, dass HTML-Element **richtig umgesetzt** wurde. Gehe erste dann weiter zum nächsten Element. Studiere falls nötig die Hilfen unten. ++++Hilfe zu Überschriften| Die Hauptüberschrift ist `GMS an der Kanti Romanshorn`. Dafür verwendet man den `<h1>` Tag. Die anderen Überschriften sind Überschriften 2. und 3. Ordnung, deshalb verwendet man für diese `<h2>` und `<h3>`. ++++ ++++Hilfe zu Paragraphen/Fliesstext| Meist ist es eine gute Idee, Fliesstext mit dem Paragraphen-Tag `<p>` zu versehen. Damit stellt man sicher, dass er auf einer neuen Zeile beginnt und das darauffolgende HTML-Element auf einer neuen Zeile beginnt. ++++ ++++Hilfe zu Listen| Es gibt unnummerierte (`<ul>`) und nummerierte (`<ol>`) Listen. Für die einzelnen Punkte der Liste verwendet man das `<li>`-Tag. <code html> Unnummerierte Liste: <ul> <li>Erstes Element</li> <li>Zweites Element</li> <li>Drittes Element</li> </ul> Nummerierte Liste: <ol> <li>Erstes Element</li> <li>Zweites Element</li> <li>Drittes Element</li> </ol> </code> ++++ ==== Theorie zu HTML-Elementen ==== Als erstes ist es wichtig, den Unterschied zwischen Block-Elementen und Inline-Elementen zu verstehen. **Block-Elemente** sind die Bausteine einer Webseite, die in der Regel den grössten Teil des Inhalts ausmachen. Sie nehmen standardmässig die volle Breite des Elements ein, in dem sie sich befinden und beginnen auf einer neuen Zeile. Im Gegensatz zu Block-Elementen fügen sich **Inline-Elemente** nahtlos in den Textfluss einer Seite ein, ohne eine neue Zeile zu beginnen. Sie nehmen nur so viel Platz ein, wie sie benötigen, und ermöglichen so eine reibungslose Einbettung von Text und anderen Inline-Elementen. Die wichtigsten **Block-Elemente** sind: * Das `<p>`-Element dient zur Darstellung von **Paragraphen** (Absätzen). Jeder Absatz beginnt auf einer neuen Zeile. * `<h1>, <h2>, <h3>, ... <h6>`: Diese Elemente repräsentieren **Überschriften** unterschiedlicher Hierarchieebenen. * `<ul>, <ol>, <li>`: **Listen** werden in HTML mit diesen Elementen erstellt. `<ul>` und `<ol>` sind Container für Listenpunkte `<li>`. * (`<div>`: Dieses Element steht für "Division" und wird in der Regel als Container verwendet, um HTML-Inhalte zu gruppieren oder zu strukturieren.) Die wichtigsten **Inline-Elemente** sind: * Mit `<em>` resp. `<strong>` kann Text **betont** (_en_: 'emphasis') resp. stark betont werden. Der entsprechende Text wird kursiv resp. fett dargestellt. Gewisse Tags benötigen **Attribute**, um zusätzliche Informationen angeben zu können: * **Hyperlinks** (Tag `<a>` für anchor) benötigen das Attribut *href* (hyper reference). Mit diesem gibt man an, auf welche Website man beim Klick weitergeleitet werden soll: `<a href="http://ksr.ch">Beim Link angezeigter Text.</a>` * Ein **Bild** fügt man wie folgt ein: `<img src="bild.jpg"/>`. Mit dem Attribut *src* (source) gibt man den Pfad zum Bild an. Befindet sich das Bild *im gleichen Ordner* wie das `index.html` Datei, so kann man einfach den Namen des Bildes inkl. Dateiendung (typischerweise `.jgp` oder `.png`) angeben. Von allen bisher betrachteten HTML-Elementen ist dieses das einzige, welches *kein Endtag* verlangt (dafür ist der Schrägstrich am Schluss des Tags). <box 100% round green|**Tipp: Arbeiten mit VSCode**> VSCode ist ein hervorragender Editor mit vielen Features. Sehr praktisch ist, dass man **mehrere Zeilen gleichzeitig bearbeiten** kann. Dies ist zum Beispiel praktisch, um alle Elemente einer Liste gleichzeitig mit Tags zu versehen. Um den Cursor gleichzeitig auf mehreren Zeilen zu haben: <kbd>Ctrl+Alt+Up</kbd>/<kbd>Down</kbd> (Windows) resp. <kbd>⌘+Option+Up</kbd>/<kbd>Down</kbd> (macOS). Allgemein verfügt VSCode über viele Shortcuts: * [[https://code.visualstudio.com/shortcuts/keyboard-shortcuts-windows.pdf|Für Windows]] * [[https://code.visualstudio.com/shortcuts/keyboard-shortcuts-macos.pdf|Für MacOS]] Sammlung wichtigster VSCode Shortcuts: * Mehrere Cursor: <kbd>C+A+Up</kbd>/<kbd>Down</kbd> / <kbd>⌘+Option+Up</kbd>/<kbd>Down</kbd> * Code Formatieren: <kbd>S+A+F</kbd> / <kbd>S+Option+F</kbd> Sammlung wichtigster allgemeinder Shortcuts: * Speichern: <kbd>C + s</kbd> / <kbd>⌘ + s</kbd> * Select All: <kbd>C + a</kbd> / <kbd>⌘ + a</kbd> * Cut, Copy, Paste: <kbd>C + x</kbd>,<kbd>c</kbd>,<kbd>V</kbd> / <kbd>⌘ + x</kbd>,<kbd>c</kbd>,<kbd>v</kbd> * Fenster wechseln: <kbd>A + Tab</kbd> / <kbd>⌘ + Tab</kbd> </box> ===== Lösungen LP ===== gf_informatik/web/html_tmp.txt Zuletzt geändert: 2023-10-24 13:24von hof