{"id":14,"date":"2013-01-09T13:11:42","date_gmt":"2013-01-09T13:11:42","guid":{"rendered":"http:\/\/multimedia.uoc.edu\/blogs\/htmlcss\/?p=14"},"modified":"2018-10-21T20:17:13","modified_gmt":"2018-10-21T19:17:13","slug":"responsive","status":"publish","type":"post","link":"https:\/\/multimedia.uoc.edu\/blogs\/htmlcss\/ca\/css\/responsive\/","title":{"rendered":"Responsive design"},"content":{"rendered":"<p>[Darrera actualitzaci\u00f3: 21\/10\/2018]<\/p>\n<p>El <i>responsive design<\/i> \u00e9s una aproximaci\u00f3 al disseny de p\u00e0gines web que t\u00e9 com a objectiu crear p\u00e0gines que donin una bona experi\u00e8ncia d&#8217;usuari independentment del dispositiu que s&#8217;utilitzi per accedir-hi. Els elements que solen caracteritzar-s\u00f3n tres:<\/p>\n<ul>\n<li>l&#8217;\u00fas d&#8217;una ret\u00edcula fluida (\u00e9s a dir, definida usant unitats com <code>em<\/code>s o percentatges, que responen a les diferents mides del <i>viewport <\/i> del navegador, i no en unitats absolutes, com els p\u00edxels);<\/li>\n<li>l&#8217;\u00fas de continguts flexibles (per exemple, definint l&#8217;amplada de les imatges com un percentatge de l&#8217;ample del seu contenidor, i no en p\u00edxels);<\/li>\n<li>l&#8217;\u00fas de <i>media queries<\/i> per permetre que el disseny canvi\u00ef en funci\u00f3 de les caracter\u00edstiques del navegador que hi accedeix.<\/li>\n<\/ul>\n<p>El que probablement sigui el &#8216;text fundacional&#8217; del &#8216;responsive&#8217; \u00e9s <a href=\"http:\/\/alistapart.com\/article\/dao\">A Dao of Web Design<\/a>, publicat a <cite>A List Apart<\/cite> l&#8217;abril del 2000, i que encara \u00e9s un dels textos m\u00e9s rellevants sobre disseny web.<\/p>\n<h2>Media Queries<\/h2>\n<p>Les <i>media queries<\/i> s\u00f3n un m\u00f2dul de CSS (<a title=\"Media Queries\" href=\"http:\/\/www.w3.org\/TR\/css3-mediaqueries\/\">especificaci\u00f3 al W3C<\/a>) que permet ajustar el CSS que s&#8217;aplica a cada element d&#8217;una p\u00e0gina en funci\u00f3 de caracter\u00edstiques del navegador i dispositiu que s&#8217;usa per accedir-hi, com la resoluci\u00f3 de pantalla o la seva profunditat de color.<\/p>\n<p>Un dels tipus de <i>media query<\/i> que <em>no<\/em> existeixen y que molts desenvolupadors acostumen a considerar pr\u00e0cticament una necessitat \u00e9s una <i>media query<\/i> basada en l&#8217;<strong>ample de banda<\/strong>: si l&#8217;ample de banda disponible \u00e9s alt servirem imatges d&#8217;alta qualitat, mentre que si estem en una situaci\u00f3 de baix ample de banda servirem imatges amb compressions m\u00e9s altes, sacrificant qualitat per l&#8217;estalvi de temps en la desc\u00e0rrega. Malgrat que aquesta idea s&#8217;ha discutit en m\u00faltiples ocasions, fins al moment les dificultats d&#8217;implementaci\u00f3n han fet que la idea no s&#8217;hagi materialitzat. Trobareu una discussi\u00f3 sobre el tema a <a href=\"https:\/\/www.smashingmagazine.com\/2013\/01\/bandwidth-media-queries-we-dont-need-em\/\">Bandwidth Media Queries? We Don\u2019t Need \u2019Em!<\/a>.<\/p>\n<p>Com amb qualsevol innovaci\u00f3, si hem de donar suport a navegadors relativament antics, ser\u00e0 necessari utilitzar <i>polyfills<\/i> o altres solucions alternatives. Algunes d&#8217;elles s\u00f3n <a href=\"https:\/\/github.com\/scottjehl\/Respond\">Respond.js<\/a>, <a href=\"http:\/\/adapt.960.gs\/\">Adapt.js<\/a>, <a href=\"https:\/\/github.com\/heathcliff\/css3-mediaqueries-js\">css3-mediaqueries.js<\/a> o <a href=\"http:\/\/wicky.nillia.ms\/enquire.js\/\">enquire.js<\/a>.<\/p>\n<h2>Imatges<\/h2>\n<p>Un dels punts m\u00e9s problem\u00e0tics en el disseny <i>responsive<\/i> \u00e9s el de les imatges, com ja hem avan\u00e7at en el punt anterior: servir la imatge adequada a cada dispositiu en funci\u00f3 del context no \u00e9s un problema senzill. El febrer de 2013 el W3C va publicar un primer esborrany sobre <a href=\"http:\/\/www.w3.org\/TR\/html-picture-element\/\">l&#8217;element <code>picture<\/code><\/a>. L&#8217;element est\u00e0 implementat en les versions 33 de Firefox i 38 de Chrome, i el juliol de 2014 s&#8217;estava treballant en la seva implementaci\u00f3 en Webkit.<\/p>\n<p>En qualsevol cas, encara es trigar\u00e0 a que <code>picture<\/code> estigui suficientment ext\u00e8s entre els navegadors (sempre podeu consultar la informaci\u00f3 m\u00e9s actualitzada al <a href=\"https:\/\/caniuse.com\/#search=picture\">corresponent apartat de canIuse.com<\/a>). Mentrestant, disposem d&#8217;algunes solucions <em>temporals<\/em>, cadascuna d&#8217;elles amb els seus avantatges i inconvenients:<\/p>\n<dl>\n<dt><a href=\"http:\/\/adaptive-images.com\/\">Adaptive Images<\/a><\/dt>\n<dd>Combina l&#8217;\u00fas d&#8217;un fitxer <code>.htaccess<\/code> amb PHP i JavaScript.<\/dd>\n<dt><a href=\"https:\/\/responsivedesign.is\/resources\/javascript-jquery\/jquery-picture\/\">jQuery Picture<\/a><\/dt>\n<dd>Plug-in de la biblioteca de JavaScript jQuery.<\/dd>\n<dt><a href=\"http:\/\/responsiveimg.com\/\">Responsive Img<\/a><\/dt>\n<dd>Plug-in de la biblioteca de JavaScript jQuery.<\/dd>\n<\/dl>\n<p>Trobareu una gran quantitat d&#8217;informaci\u00f3 al respecte a <a href=\"http:\/\/responsiveimages.org\/\">ResponsiveImages.org<\/a>. Tamb\u00e9 \u00e9s una lectura interessante <a href=\"http:\/\/dev.opera.com\/articles\/responsive-images\/\">Responsive Images: Use Cases and Documented Code Snippets to Get You Started<\/a> (<cite lang=\"en\">dev.opera<\/cite>, juliol de 2014)<\/p>\n<h2>Per a saber-ne m\u00e9s<\/h2>\n<p>Potser la millor llista de recursos sigui <a href=\"https:\/\/bradfrost.github.io\/this-is-responsive\/resources.html\">Responsive Resources<\/a>, mantinguda per Brad Frost.<\/p>\n<p><a href=\"https:\/\/www.sitepoint.com\/responsive-web-design-tips-and-notes\/\">Understanding Responsive Web Design: Clear Concepts and Practical Applications<\/a> (gener de 2013)<\/p>\n<p><a href=\"https:\/\/www.sitepoint.com\/understanding-responsive-web-design-how-to-manage-fonts\/\">Responsive Web Design: Using Fonts Responsively<\/a> (gener de 2013)<\/p>\n<p><a href=\"https:\/\/blog.easy-designs.net\/archives\/responsive-tables\/\">Responsive Tables<\/a> (febrer de 2013)<\/p>\n<p><a href=\"http:\/\/bradfrost.com\/blog\/post\/the-overflow-pattern\/\">The Overflow Pattern<\/a> (7 de gener, 2013)<\/p>\n<p><a href=\"http:\/\/poslepu.blogspot.com.es\/2013\/02\/responsive-design-and-accessibility.html\">Responsive Design and Accessibility<\/a> (febrer de 2013)<\/p>\n<p>Una cosa que hem de considerar \u00e9s que els problemes del disseny <i>reponsive<\/i> no es limiten al disseny, ni tan sols al disseny <em>i<\/em> desenvolupament, sin\u00f3 que els continguts que publiquem tamb\u00e9 han de tenir en compte la nova filosofia:<\/p>\n<p><iframe loading=\"lazy\" title=\"Karen McGrane: Adapting Ourselves to Adaptive Content - An Event Apart\" src=\"https:\/\/player.vimeo.com\/video\/56705945?dnt=1&amp;app_id=122963\" width=\"640\" height=\"360\" frameborder=\"0\" allow=\"autoplay; fullscreen; picture-in-picture; clipboard-write\"><\/iframe><\/p>\n<p>Tot i que el <i>responsive<\/i> \u00e9s una part essencial d&#8217;una estrat\u00e8gia de continguts multidispositiu, no pot ser-ne l&#8217;\u00fanica component, donat que s&#8217;han de considerar m\u00e9s aspectes. Un article molt interessant sobre el tema \u00e9s <a href=\"https:\/\/www.smashingmagazine.com\/2014\/07\/responsive-web-design-should-not-be-your-only-mobile-strategy\/\">You May Be Losing Users If Responsive Web Design Is Your Only Mobile Strategy<\/a> (Maximiliano Firtman, <cite lang=\"en\">Smashing Magazine<\/cite>, juliol de 2014)<\/p>","protected":false},"excerpt":{"rendered":"<p>[Darrera actualitzaci\u00f3: 21\/10\/2018] El responsive design \u00e9s una aproximaci\u00f3 al disseny de p\u00e0gines web que t\u00e9 com a objectiu crear p\u00e0gines que donin una bona experi\u00e8ncia d&#8217;usuari independentment del dispositiu que s&#8217;utilitzi per accedir-hi. Els elements que solen caracteritzar-s\u00f3n tres: l&#8217;\u00fas d&#8217;una ret\u00edcula fluida (\u00e9s a dir, definida usant unitats com ems o percentatges, que &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/multimedia.uoc.edu\/blogs\/htmlcss\/ca\/css\/responsive\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Responsive design&#8221;<\/span><\/a><\/p>\n","protected":false},"author":4,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[],"class_list":["post-14","post","type-post","status-publish","format-standard","hentry","category-css","entry"],"_links":{"self":[{"href":"https:\/\/multimedia.uoc.edu\/blogs\/htmlcss\/ca\/wp-json\/wp\/v2\/posts\/14","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/multimedia.uoc.edu\/blogs\/htmlcss\/ca\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/multimedia.uoc.edu\/blogs\/htmlcss\/ca\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/multimedia.uoc.edu\/blogs\/htmlcss\/ca\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/multimedia.uoc.edu\/blogs\/htmlcss\/ca\/wp-json\/wp\/v2\/comments?post=14"}],"version-history":[{"count":25,"href":"https:\/\/multimedia.uoc.edu\/blogs\/htmlcss\/ca\/wp-json\/wp\/v2\/posts\/14\/revisions"}],"predecessor-version":[{"id":487,"href":"https:\/\/multimedia.uoc.edu\/blogs\/htmlcss\/ca\/wp-json\/wp\/v2\/posts\/14\/revisions\/487"}],"wp:attachment":[{"href":"https:\/\/multimedia.uoc.edu\/blogs\/htmlcss\/ca\/wp-json\/wp\/v2\/media?parent=14"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/multimedia.uoc.edu\/blogs\/htmlcss\/ca\/wp-json\/wp\/v2\/categories?post=14"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/multimedia.uoc.edu\/blogs\/htmlcss\/ca\/wp-json\/wp\/v2\/tags?post=14"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}