diff --git a/public/images/cat-w250.png b/public/images/cat-w250.png
new file mode 100644
index 0000000..bd95c63
Binary files /dev/null and b/public/images/cat-w250.png differ
diff --git a/public/images/cat-w600.png b/public/images/cat-w600.png
new file mode 100644
index 0000000..5001a8d
Binary files /dev/null and b/public/images/cat-w600.png differ
diff --git a/public/images/cat.png b/public/images/cat.png
new file mode 100644
index 0000000..50d5daa
Binary files /dev/null and b/public/images/cat.png differ
diff --git a/src/components/slides/html-images/basics.astro b/src/components/slides/html-images/basics.astro
new file mode 100644
index 0000000..439c010
--- /dev/null
+++ b/src/components/slides/html-images/basics.astro
@@ -0,0 +1,142 @@
+ Mithilfe des Die Einbindung des Bilder erfolgt mit dem Das Bild wird im Web-Server abgelegt und mit dem Pfad aufgerufen. Es können natürlich auch Bilder aus anderen Webseiten verwendet werden, aber dies ist nicht beliebt. Datenhaltung und Bandbreite werden mit auf den Host des Bildes "abgeschoben". Mit dem alt-Attribut kann das Bild beschrieben werden, dass angezeigt wird. Der Text ist so nicht einsehbar, technische Hilfsmittel wie Screen-Reader verwenden aber solche Informationen. (Weitere) Gründe das alt-Attribut zu verwenden Es ist mit den Attributen Tipp: Wenn das Bild flexibel geladen wird, immer nur ein Attribut verwenden. Der Browser behält das Seitenverhältniss ansonsten nicht: Aber Wieso Dimensionen angeben? Der Browser lädt zuerst HTML, liest dann das HTML und lädt Inhalte nach sobald er welche findet. Das Bedeutet, dass ein Bild womöglich während der ersten Sekunden nicht zu sehen ist und dann klassisch rein "ploppt". Inhalt der nach dem Bild angezeigt wird, wird daraufhin verschoben -> Schlechte User-Experience. Das gesamte Konzept (Inhalt wird nachgeladen) ist auch unter dem Begriff "Cumulative Layout Shift" bekannt. Wird eine Höhe vorgegeben, so "reserviert" der Browser den Platz, bis das Bild vollständig geladen wurde. Bilder-Formate gibt es heutzutage wie Sand am Meer. Klassische Formate Modernere Formate bieten normalerweise "gleichbleibende" Qualität bei drastisch kleineren DateigrößenDas
+ img
-TagEinbinden einer Grafik
+ <img />
Tag können Bilder in die Website eingebunden werden:
+
src
-Attribut:
+
+ <img src="/images/cat.png" />
+
Aber h
+ "alt"
+
+ <img
+ src="/images/cat.png"
+ alt="Eine schwarz-weiß farbene Katze sitzt
+ und schaut interessiert nach oben"
+ />
+
+
+
+
+ <img
+ src="/non-existent.png"
+ alt="Das Bild hier fehlt"
+ />
+
+
Breite & Höhe vordefinieren
+ height
und width
möglich, dem Browser mitzuteilen welche Breite und Höhe das geladene Bild einnehmen soll.
+
+ <img
+ src="/images/cat.png"
+ alt="Das Bild einer Katze"
+ height="50"
+ />
+
+
+
+ <img
+ src="/images/cat.png"
+ alt="Das Bild einer Katze"
+ height="250"
+ />
+
+
+
+ <img
+ src="/images/cat.png"
+ alt="Das Bild einer Katze"
+ height="250"
+ width="100"
+ />
+
+
Datei-Typen
+
+
+
+
+
Seit dem Smartphone gibt es das Problem der Bildschirmbreiten und der Support derer.
+srcset
und sizes
Mithilfe der Attribute srcset
und sizes
kann der Browser anhand der Informationen vom Entwickler und des Gerätes verschiedene Bilder laden.
Zwischen verschiedenen Browser erlebt man aber verschiedene Erfahrungen...
+Beispiel
+
+ <img
+ srcset="
+ /images/cat-w250.png 250w, // Erstes Bild - 250px
+ /images/cat-w600.png 600w, // Zweites Bild - 600px
+ "
+ sizes="
+ (max-width: 800px) 250px, // Bildschirme <= 800px
+ 600px // Bildschirme > 800px
+ "
+ src="/images/cat-w250.png" // Fallback
+ alt="Eine Katze"
+ />
+
+ <picture>
- Die AlternativeBietet die gleichen Features, lässt das alles aber ein bisschen besser aussehen
+Kann aber auch ein bisschen mehr!
+
+ <picuture>
+ <source /> <!-- Ein oder mehrere source-tags -->
+ <source />
+ <img /> <!-- Notwendig zum Anzeigen -->
+ </picture>
+
+
+ <picuture>
+ <!-- Das kleine Bild definieren, zeige bis 799px an -->
+ <source
+ media="(max-width: 799px)"
+ srcset="/images/cat-w250.png"
+ />
+ <!-- Das große Bild definieren, zeige ab 800px an -->
+ <source
+ media="(min-width: 800px)"
+ srcset="/images/cat-w600.png"
+ />
+ <img
+ src="/images/cat-w600.png" alt="Eine Katze"
+ />
+ </picture>
+
+