Warum Responsive Web Design?
Transcription
Warum Responsive Web Design?
Responsive Web Design Graceful Degradation and Progressive Enhancement Thomas Körner Seminar Web Engineering für Master-Studenten (WS 2013/2014) Betreuer: Michael Krug Datum: 13.12.2013 Thomas Körner Responsive Web Design 1 Gliederung 1. 2. 3. 4. 5. 6. 7. Warum Responsive Web Design? Konzepte zur Anpassung an versch. Viewports Graceful Degradation Progressive Enhancement Grundstruktur der Website: Layout Lokale Techníken für responsive Webdesign Serverseitige Techniken für responsive Webdesign Thomas Körner Responsive Web Design 2 Warum Responsive Web Design? • Unterschiedlichste Geräte greifen auf Website zu • Geräte unterscheiden sich: Display-Größe, DisplayAuflösung, Netzwerkgeschwindigkeit, Technologie- und Standardunterstützung, Eingabemethode Thomas Körner Responsive Web Design 3 Konzepte zur Anpassung an versch. Viewports • Mobile Seiten – eigenständige Seite für mobile Geräte – meist auf die speziellen Anwendungsfälle von mobilen Nutzern ausgelegt • Adaptives Webdesign – Website für verschiedene Viewports optimiert – Wechsel an bestimmten Breakpoints • Responsive Webdesign – Anpassung durch Skalierung, Verschiebung, Ausblendung und Veränderung bestimmter Elemente an Viewport Thomas Körner Responsive Web Design 4 Graceful Degradation - Konzept • Klassisches Konzept, auch aus anderen Bereichen bekannt • Vorgehen 1. Entwickeln der Seite nach dem neusten Stand der Technik → Features, Technologien, Standards 2. Rückfalloptionen für Browser, welche weniger Features unterstützen → auf ältere/verbreitetere Technologien zurückgreifen, Funktionsumfang einschränken oder Funktionen komplett abschalten Thomas Körner Responsive Web Design 5 Graceful Degradation – Bewertung und Beispiele • Vorteile – schnelle und kostengünstige Entwicklung – besser als keine Fallback-Mechanismen – Ideal bei bestehenden Websites • Nachteile – Fallback-Methode nicht immer leicht zu finden und zu implementieren – hoher Wartungsaufwand • Beispiele – alt-Attribut bei Bildern, Tabellen-Layouts, <noscript>Element Thomas Körner Responsive Web Design 6 Progressive Enhancement - Konzept • Vorgehen 1. Inhalt: strukturiertes Markup schreiben (Inhalte strukturieren und HTML-Grundgerüst bauen) 2. Darstellung: Aussehen durch CSS gestalten 3. Verhalten: Erweiterung/Verbesserung der Funktionen durch JavaScript • Achtung: Browser haben unterschiedliche CSS- und JavaScript-Unterstützung! • Mobile-First: Inhalte werden zuerst für kleine Bildschirm konzipiert → Reduzierung auf wesentliche Inhalte und komplexen Navigationen Thomas Körner Responsive Web Design 7 Progressive Enhancement – Bewertung und Beispiele • Vorteile – Website von nahezu jedem Gerät benutzbar – einfachere Integration neuer Technologien/Standards – Ideal bei Neuentwicklung von Websites • Nachteile – höhere Kosten- und Zeitfaktor • Beispiele – externe CSS- und JavaScript-Dateien, unobtrusive JavaScript Thomas Körner Responsive Web Design 8 Demo Thomas Körner Responsive Web Design 9 Grundstruktur der Website: Layout Starres Layout Flüssiges Layout Elastisches Layout • Gestaltungsraster fest (Pixelwerte) • feste Darstellung • Gestaltungsraster variabel (Prozente) • Darstellung passt sich Viewport an • Gestaltungsraster variabel (em) • Darstellung passt sich Schriftgröße an • Flüssige und elastische Layouts Grundlage für Responsive Webdesign • Üblich: Mischformen (Bspw.: variable Spalten, fester Header) Thomas Körner Responsive Web Design 10 Lokale Techniken: Viewport • Viewport = sichtbarer Bereich im Browser • Viewport-Meta-Tag – <meta name="viewport" content="width=device-width" /> – weit verbreitet, kein W3C-Standard! • Viewport CSS-Syntax – @viewport {width:device-width; orientation: landscape;} – W3C-Working-Draft-Status – kaum Browserunterstützung, nur IE10+ und Opera 11+ mit Browser-Prefix Thomas Körner Responsive Web Design 12 Lokale Techniken: Media Queries • CSS-Befehle zum Testen auf Browser-Eigenschaften • @media [not|only] typ [and] expr { CSS-Befehle } • @media screen and (min-width: 320px) { h1 { color: red; } } Thomas Körner Responsive Web Design 13 Serverseitige Techniken: User-Agent-Auswertung • Auswertung mittels Script oder mithilfe von Datenbanken (bspw. WURFL) • Auslieferung der passend optimierten Website – Minimierung von Datentransfer • UA-String kann leicht manipuliert werden Thomas Körner Responsive Web Design 14 Serverseitige Techniken: Feature-Erkennung • Clientseitig – Browser per JavaScript auf Features testen – bekannte JS-Bibliothek: Modernizr • Test auf HTML5 und CSS3-Unterstützung • Serverseitig – Resultate per Cookie an Server übermitteln – Bibliotheken für Modernizr • Bspw.: Modernizr-Server Thomas Körner Responsive Web Design 15 Serverseitige Techniken: RESS • Responsive Web Design + Server Side Components → Kombination aus Responsive Design und serverseitiger Optimierung – Grunddesign in mit Responsive Design entwickelt – Spezielle Elemente durch Server optimiert Thomas Körner Responsive Web Design 16 Quellen • • • • • • • • • • • • • • Designing with Progressive Enhancement: Building the Web that Works for Everyone. By: Todd Parker; Patty Toland; Scott Jehl; Maggie Costello Wachs. New Riders, 2010 Implementing Responsive Design: Building sites for an anywhere, everywhere web. By: Tim Kadlec. New Riders, 2012 Mobiles Web von Kopf bis Fuß. By: Lyza Danger Gardner; Jason Grigsby. O'Reilly Verlag, 2012 http://accessites.org/site/2007/02/graceful-degradation-progressive-enhancement/ http://www.sitepoint.com/progressive-enhancement-graceful-degradation-choice/ http://blog.kulturbanause.de/2012/11/adaptive-website-vs-responsive-website/ http://blog.kulturbanause.de/2013/08/mobile-first-progressive-enhancement/ http://blog.mosaiq-media.de/online-marketing/2013/03/25/richtig-mobil-adaptive-vs-responsivewebdesign/ http://docs.webplatform.org/wiki/css/atrules/@viewport http://www.webdesignerdepot.com/2013/08/how-to-build-standards-compliant-responsivedesign-using-viewport/ http://maddesigns.de/RESS http://ress.io/get-started/ http://modernizr.com/docs/ https://github.com/jamesgpearce/modernizr-server Thomas Körner Responsive Web Design 17 Vielen Dank für ihre Aufmerksamkeit! Thomas Körner Responsive Web Design 18