Zum Inhalt springen

Media Queries

Mit @media könnt ihr CSS-Regeln nur unter bestimmten Bedingungen gelten lassen. Am häufigsten: ab einer bestimmten Fensterbreite.

.sidebar {
display: none; /* auf kleinen Bildschirmen erstmal ausblenden */
}
@media (min-width: 768px) {
.sidebar {
display: block; /* ab 768px wieder einblenden */
}
}
  • min-width - Regel gilt ab dieser Breite
  • max-width - Regel gilt bis zu dieser Breite
  • Typische Breakpoints: 480px (Handy), 768px (Tablet), 1024px+ (Desktop) - aber richtet euch nach eurem Inhalt, nicht nach starren Geräte-Größen!

2009 schlug Luke Wroblewski unter dem Slogan “Mobile First” vor, zuerst die schmale, mobile Version einer Seite zu gestalten - und davon dann die breiteren Versionen abzuleiten, nicht umgekehrt:

Mobile First

/* 1. Basis-Styles gelten für ALLE Bildschirmgrößen - "mobil" gedacht */
.sidebar {
display: none;
}
/* 2. Ab einer bestimmten Breite: Ergänzungen für mehr Platz */
@media (min-width: 768px) {
.sidebar {
display: block;
}
}

Die Verwendung von Media Queries für ganze Layout-Wechsel wurde 2010 in einem Artikel von Ethan Marcotte unter dem Begriff “Responsive Web Design” bekannt gemacht. Inhalt und HTML bleiben dabei gleich - nur das CSS-Layout wechselt:

Das erste Beispiel für "Responsive Web Design": Darstellung der Seite auf verschiedenen Breiten

Das Prinzip ist bis heute dasselbe geblieben - nur mit mehr Zwischenstufen, höheren Auflösungen und mehr Werkzeugen (Container Queries, clamp(), …):

Beispiel für Responsive Web Design aus 2024