Responsive Webdesign mit CSS3 Media Queries: So funktioniert’s

CSS3 Media Queries machen es mög­lich, dass sich ein Webdesign auto­ma­tisch an unter­schied­liche Bildschirmformate anpasst. Für ein sol­ches Webdesign hat sich der Begriff »Responsive Webdesign« (also anspre­chendes, auf etwas rea­gie­rendes Design) durch­ge­setzt. Man legt dazu ein­fach die maxi­malen bzw. mini­malen Maße eines Bildschirmformates (z.B. des iPads) fest, und kann dann für dieses Format eigene CSS-Styles bestimmen. In der Theorie klingt das eigent­lich recht ein­fach, und auch die Einbindung der Media Queries ist nicht sehr kom­pli­ziert. Allerdings gibt es bei der Arbeit mit CSS3 Media Queries einiges zu bedenken, wie ja auch schon im Artikel »Was können CSS3 Media Queries wirk­lich leisten?« bespro­chen wurde.
Hast du dich für die Umsetzung eines Webseiten-Projekts mit CSS3 Media Queries ent­schieden, und auch schon ent­spre­chende Layout (z.B. für eine große Desktop-Version, eine schma­lere Tablet-Variante und eine kleine Smartphone-Version) deines Designs vor­be­reitet, kannst du mit der Umsetzung los­legen.

1. Die Vorgehensweise

Als erstes musst du dir über­legen, welche Webseiten-Größe deine Standard-Version werden soll. Dazu kannst du ent­weder die größte Version, also die Desktop-Ansicht wählen oder, falls du dein Webseiten-Projekt vor allem für mobile Geräte umsetzt, die mobile Smartphone-Version. Du kannst also ent­weder vom Großen ins Kleine oder andersrum arbeiten.

Wenn du dich für die mobile Webseiten-Version als Standard ent­schei­dest, soll­test du dir unbe­dingt die Tipps und Infos auf der Webseite von Luke W. anschauen. Die Seite von Luke W. Ist übri­gens selbst ein Beispiel für eine solche »Mobile First«-Vorgehensweise.

Deine Standard-Version (egal ob Mobile oder Desktop) setzt du jetzt wie gewohnt mit CSS in einem Haupt-Stylesheet um. Im nächsten Schritt fügt du dann deine Media Queries ein, um die wei­teren Bildschirmformate anzu­spre­chen und mit CSS ent­spre­chend um zu stylen.

2. CSS3 Media Queries einbinden

Es gibt zwei Möglichkeiten, die Media Queries auf­zu­rufen. Entweder du fügst sie direkt in dein Haupt-Stylesheet ein. Dazu kannst du die @media only screen { } nutzen. Hier ein Beispiel:

/* iPads (landscape) ----------- */
@media only screen
and (min-device-width : 768px)
and (max-device-width : 1024px)
and (orientation : landscape) {
...
}

Innerhalb der geschwun­genen Klammern fügst du dann deine benö­tigten Styles ein.

Alternativ kannst du auch jeweils ein extra Stylesheet für jede Layout-Version anlegen, und diese inner­halb des head-Tags mit einem link-Tag auf­rufen. Für die iPad-Version im Querformat benö­tigst du also also den Code:

<link rel="stylesheet" href="ipad-landscape.css" media="only screen and (min-device width : 768px) and (max-device-width : 1024px) and (orientation : landscape)">

Eine sehr hilf­reiche Über­sicht über die benö­tigten Formate fin­dest du in der CSS3 Media Queries Vorlage »Hardboiled CSS3 Media Queries« von Andy Clarke. Hier kannst du dir ver­schie­dene Formate genau anschauen, und den für dein Layout benö­tigten Code kopieren.

3. Der Viewport Meta-Tag

Neben der Integration der Media Queries ist außerdem wichtig, dass du den Viewport meta-Tag inner­halb deines head-Tags aufrufst.

<meta name="viewport" content="width=device-width, minimum-scale=1.0, maximum-scale=1.0" />

Mit diesem Code kannst du unter­binden, dass deine Webseite im iPhone auto­ma­tisch auf eine pas­sende Größe kleiner gezoomt wird.

4. Tipps für fle­xi­bles CSS-Stying

Im Gegensatz zur Umsetzung eines Webdesigns mit fester Breite, ist es beim Gestalten von fle­xi­blen Layout sinn­voller mit Prozentzahlen zu arbeiten. So kannst deine Div-Container und font-size Angaben bei­spiels­weise in Prozent angeben, und auch bei der Arbeit mit Images ist die Angabe von max-width:100%; sinn­voll.
Diese CSS-Angabe wird aller­dings nicht vom Internet Explorer 9 unter­stützt, einen aus­führ­li­chen Artikel zu dieser Problematik schreibt auch Ethan Marcotte in seinem Artikel über Fluid Images.

Sehr wichtig ist meiner Meinung nach bei der Umsetzung eines Designs mit CSS3 Media Queries, dass man die Layouts in den Grundzügen im CSS anlegt und dann das Design immer wieder in ver­schie­denen Browsern und auf den unter­schied­li­chen Geräten testet. Nur so bekommst du ein Gefühl für die pas­senden Schriftgrößen und Maße.

Tipps zum Weiterlesen

Die fol­genden Blog-Artikel, Code-Beispiele und Tools bieten eine hilf­reiche Grundlage, um mit der Umsetzung einer mit CSS Media Queries opti­mierten Webseite loszulegen.

Hast du bereits eigene Erfahrungen mit den CSS3 Media Queries machen können? Auf was sollte man deiner Meinung nach bei der Umsetzung eines Responsive Layouts beson­ders achten, und kennst du wei­tere infor­ma­tive Artikel oder Tools zum Thema? Über dein Feedback und deine Tipps freue ich mich sehr!

18 Kommentare

  1. Vincent

    Wow! Ihr geht ja ganz schön aus­führ­lich in die Media Queries! Werde bei Gelegenheit auch mal mein Blog daran anpassen.

    Eine Frage hätte ich noch: Weiß einer von euch Zahlen mit einer Auflistung der Bildschirmformate und der Prozentualen Nutzung der Formate. Wer ganz hilf­reich um zu wissen wo es sich am meisten lohnt anzupassen!

    Viele Grüße
    Vincent

    • Ellen

      Hallo Vincent,

      vielen Dank für dein Feedback, ja, uns gefällt der Media Queries Ansatz ziem­lich gut, auch wenn die Umsetzung wie ja schon erwähnt bestimmt nicht für jede Webseite die pas­sende Lösung ist :-)

      So eine Quelle kenne ich selbst nicht, wobei der Vorteil von Media Queries auch ist, dass man (neben den festen Formaten) ein fle­xi­bles, fluid Layout gestalten kann. So können auch neue Formate und Zwischengrößen ange­spro­chen werden.

      Viele Grüße,
      Ellen

  2. Andre

    Super genial :D
    Danke. Ich möchte hier noch einen Wunsch äußern: Kannst du mal so ein Grid-System erläu­tern (wenn du es getan hast, hab ich es noch nicht gelesen :) ). In einem meiner Webdesign Büchern steht auch was zum Goldenen Schnitt 1.62.
    Was sollte man denn nun nehmen?

    • Ellen

      Hallo Andre,

      vielen Dank für dein Feedback, ja, ein fle­xi­bles Layout mit Gridsystem etwas näher zu erläu­tern ist eine super Idee. Vielen Dank für diesen Tipp :-)

      Wenn du ein Webdesign in einem CSS-Grid umsetzen möch­test, dass Media Queries nutzt, schau doch einmal in den Artikel zum 1140px Grid rein. Indem du auf der Demo-Seite des Grids dein Browser-Fenster in der Größe ver­schiebst, bekommst du schon eine recht gute Vorstellung, wie die Inhalte in einem sol­chen Gridsystem unter­ge­bracht werden können.

      Viele Grüße,
      Ellen

  3. BAR M Webdesign Berlin

    Vielen Dank für den Hinweis zum Viewport meta-Tag - und für die ange­nehm detail­lierte und den­noch über­sicht­liche Darstellung.

    Beim pro­zen­tu­ellen Definieren der Div-Container ist eine groß­zü­gige Gestaltung mit genü­gend Weißraum ver­mut­lich uner­läss­lich? Auf pixel­ge­naues Rendering kann man ja bei der Umsetzung von Prozentangaben nicht bauen, oder was sind eure Erfahrungen?

    • Ellen

      Hallo BAR M,
      freut mich, dass dir die Über­sicht zum Thema CSS3 Media Queries gefällt :-)

      Ja, du hast Recht, die Angaben der DIVs in Prozent statt in Pixel ist anfangs wirk­lich etwas unge­wöhn­lich. Vor allem, wenn man ein für mög­lichst viele Formate pas­sendes Layout gestalten will. Aus der eigenen Erfahrung mit dem Ari-Theme sind wir nach ein wenig Grundarbeit mit Prozentzahlen recht schnell ins CSS gegangen, und haben das Layout in einer Demo direkt im Browser getestet und angepasst.

      Viele Grüße,
      Ellen

  4. Jürgen

    Sehr schön - und so pas­send: ggf. muss / darf ich mich in Kürze mit Designanpassungen für iPhone und iPad beschäftigen.

    Danke :-)

    • Ellen

      Hallo Jürgen,

      vielen Dank für deinen Kommentar, klasse, dass du die Tipps so gut gebrau­chen kannst :-)

      Viel Spaß beim desi­gnen und viele Grüße,
      Ellen

  5. Vincent

    Wollte noch anmerken das oft die Android Tablets ver­nach­läs­sigt werden (in der Auflösung) , zwar ist das iPad meines Wissens nach das meist­ge­nutze Tablet aber man sollte auch die gucken ob die eigene Website auf anderen Tablets läuft.

    Beim iPhone das gleiche, alle denken es gibt nur iPhone-Besitzer :)

    Gruß
    Vincent

  6. Thomas Sausen

    Responsive Webdesign ist der neuste Trend. Wer den eng­lisch­spra­chigen Raum beob­achtet meint, dass es fast der hei­lige Gral ist.

    Ich tue mich noch sehr schwer mit der Umsetzung. Klappt alles nicht so, wie ich das möchte. Auch Frage ich mich, ob die Sache mit dem Image-Resizing wirk­lich cool ist, da die Grafik ja immer die Dateigröße xy hat und nur kleiner dar­ge­stellt wird (außer IE9). Und gerade bei Smartphones sollten die Websites doch nicht so riesig von der Dateigöße sein. Daher ver­stehe ich den Ansatz »Mobile first«, frage mich aber, ob die guten alten Methoden ala spe­zi­elle Handheld-Version mit Responsive Webdesign wirk­lich aus­ge­dient haben?

    Da würde mich eure Meinung interessieren.

    Genauso, ob ihr für Kunden oder eigene Projekte die neue Methode ein­setzt bzw kurz­fristig ein­setzen werdet. Wird dieser Blog ggf. bald responsive?

    • Ellen

      Hallo Thomas,

      vielen Dank für dein Feedback zum Thema Responsive Webdesign. Du hast Recht, es gibt bei der Umsetzung wirk­lich etli­ches, was zu bedenken ist bzw. ein­fach anders umzu­setzen ist, als bisher gewohnt (z.B. die Image-Größen). Dennoch finde ich die Option, mit Hilfe von Media Queries unter­schied­liche Browsergrößen anspre­chen zu können, sehr span­nend und viel versprechend.

      Nachdem wir das Ari Theme mit CSS3 Media Queries umge­setzt haben, arbeiten wir im Augenblick auch an einem etwas grö­ßerem Theme für den Elmastudio-Blog. Auch hier wollen wir wieder CSS3 Media Queries nutzen. Ich denke, die Lösung ist even­tuell nicht für alle Webseiten geeignet. Wenn sehr viele Bilder oder Slider im Einsatz sind, kann es bei den großen Datenmengen schon etwas schwierig werden.

      Viele Grüße,
      Ellen

  7. DrGonard

    Vielen Dank für den Blog.
    Ich bin auch gerade dabei mich in das Thema Mediaqueries und Anpassen der Website an mobile Geräte ein­zu­ar­beiten. Dafür war dein Blog auf jeden Fall schonmal eine weiter Hilfe ;)
    Ich denke es wäre auch noch ganz inter­es­sant ein Blog (von dir ;) ) zu lesen, wo wei­tere Informationen auf­ge­zeigt werden, die noch für die Erstellung/Anpassung einer Website an Smartphones/mobile Geräte zu beachten sind. Mir spontan würde da die Anzeige der ver­wen­deten Bilder ein­fallen. Denn gerade bei Smartphones ist die Ladezeit der Seite wichtig und bei vielen großen Bilder wird diese viel zu lang, was dann dazu führen könnte, das der Nutzer even­tuell genervt ist und die Seite wieder ver­lässt. Dies nur als kleine Anregung ;)
    Ich freu mich mehr von Dir zu lesen.

    LG DrGonard ;)

  8. fimbim

    Super Artikel. Sehr aus­führ­lich. Media Queries sind wahr­schein­lich noch nicht das letzte Wort im responsive Webdesign, aber eine sehr nette Möglichkeit für alle Devices zu schreiben. Außerdem über­sicht­lich und einfach… Danke Leute!

  9. Pingback: Bilder-Test | picolight

  10. Jannis Gerlinger

    Danke für die kleine EInführung. Bin eben­falls dabei mich gerade mit CSS Media Queries und Responsive Webdesign ein­zu­ar­beiten und bin gespannt wie viel auf­wen­diger das Verfahren ist. Mich würde auch inter­es­sieren ob es noch alter­na­tiven zu Media Queries gibt.

Hinterlasse eine Antwort

Pflichtfelder sind mit * markiert.

*


Top