Mit CSS2 wurden die Medientypen eingeführt. Hier war die Idee, verschiedene Style-Deklarationen für verschiedene Medientypen (Endgeräte), wie Bildschirme, Drucker oder Handhelds, festzulegen. Somit konnte ein Design für das entsprechende Endgerät optimiert werden. Mit der Einführung von Tablets und Smartphones kam das Hoch- und Querformat hinzu und die Auflösung von kleinen Bildschirmen wurde immer höher. Damit war ein Design nicht mehr nur von einem Gerätetyp abhängig, sondern auch von der Auflösung und wie ein Gerät gehalten wird.
Mit CSS3 wurden schließlich Media-Queries eingeführt, bei denen nicht nur Endgerätetypen sondern auch Darstellungs-Charakteristika von Endgeräten, wie maximal darstellbare Breite oder Höhe oder die gewählte Orientierung (Querformat, Hochformat), angegeben werden können. So kann eine Webseite daraufhin optimiert werden, welche Darstellungs-Charakteristika das Endgerät des Anwenders besitzt. Ein Design das auf Darstellungs-Charakteristika von Endgeräten optimiert ist, wird auch als „Responsives Design“ bezeichnet.
Media-Queries bestehen aus Medientypen und Medienmerkmalen:
Bei den Medientypen werden lediglich Folgende noch verwendet:
Medienmerkmale gibt es u. a. Folgende:
Hinweis: Eine vollständige Liste der Medientypen und Medienmerkmalen gibt es bei „w3schools.com“ auf der Seite „CSS3 @media Rule“!
Mit dem Medienmerkmal „max-width“ können CSS-Deklarationen für den Fall definiert werden, dass der maximale sichtbare Bereich, kleiner als der angegebene Wert ist. D. h. die Webseite wird zunächst für große Bildschirme (Laptop, Desktop PC) definiert. Für kleinere Bildschirme (Smartphone, Tablet) gibt es dann einen extra Satz an CSS-Deklarationen:
CSS-Datei:
HTML-Datei:
Ergebnis im Browser:
Mit dem Medienmerkmal „min-width“ können CSS-Deklarationen für den Fall definiert werden, dass der minimale sichtbare Bereich, größer als der angegebene Wert ist. D. h. hier wird die Webseite zunächst für kleine Bildschirme definiert und für große Bildschirme gibt es dann einen extra Satz an CSS-Deklarationen:
CSS-Datei:
HTML-Datei:
Ergebnis im Browser:
Die Medienmerkmale „max-height“ und „min-height“ funktionieren für die maximal und minimal darstellbare Höhe, wie „max-width“ und „min-width“ in Bezug auf die Breite. Im folgenden Beispiel wird der Zeilenabstand je nach verfügbarer darstellbaren Höhe vergrößert oder verkleinert:
CSS-Datei:
HTML-Datei:
Ergebnis im Browser:
Mit dem Medienmerkmal „orientation“ können CSS-Deklarationen für das Hoch- und Querformat von Smartphones und Tablets definiert werden:
CSS-Datei:
HTML-Datei:
Ergebnis im Browser:
Es ist auch möglich, in Abhängigkeit von Medientypen und Medienmerkmalen bestimmte CSS-Dateien zu verwenden. Dazu werden die Media-Queries in der HTML-Datei innerhalb von „link“-Elementen verwendet:
CSS-Datei 1:
CSS-Datei 2:
HTML-Datei:
Ergebnis im Browser:
Als Abschlussübung kannst du folgende Seit erstellen, bei der je nach maximaler darstellbaren Breite, die einzelnen Themen entweder in Spalten oder untereinander dargestellt werden:
Dazu folgende Hilfestellung:
Die Lösung kannst du dir zur Kontrolle hier herunterladen: