14.04.2013 Views

WILFREDO SALAS G. - Responsive Web Design - Webuda

WILFREDO SALAS G. - Responsive Web Design - Webuda

WILFREDO SALAS G. - Responsive Web Design - Webuda

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>WILFREDO</strong> <strong>SALAS</strong> G.<br />

<strong>Responsive</strong><br />

<strong>Web</strong> <strong>Design</strong><br />

Todo lo que necesitas saber para hacer diseños web sensibles


Índice<br />

CAPÍTULO 1<br />

Nuestro Mundo Sensible<br />

CAPÍTULO 2<br />

La grilla flexible<br />

CAPÍTULO 3<br />

Imágenes flexibles<br />

CAPÍTULO 4<br />

Media queries<br />

CAPÍTULO 5<br />

Más sobre responsive<br />

3<br />

8<br />

19<br />

24<br />

30


CAPÍTULO 1<br />

Nuestro Mundo Sensible<br />

AL EMPEZAR A ESCRIBIR no me paro de preguntar en dónde el lector se sentará y en qué verá el contenido de<br />

este libro, inclusive, dada la naturaleza digital de este ejemplar es muy poco probable que las personas<br />

lo bajen, lean un poco de un computador y después lo impriman para poder tomar notas o leer de una<br />

forma más relajada para ellos, pero aún así, hay que ponerse en ese plano. Hay otros que sencillamente<br />

lo leerán dentro de sus tablets, o hasta smartphones e inclusive, otros más prácticos simplemente<br />

tendrán la versión pdf en su computador para poder revisarla las veces que sea necesario mientras están<br />

trabajando, o estudiando, o aplicando el paso a paso de información en los cuáles se verán inmersos<br />

dentro de los próximos capítulos.<br />

La verdad, es un poco complicado analizar todas las posibles situaciones y ver cuál es una buena solución<br />

para cada una de ellas, por eso mismo decidí no preocuparme para nada. En este preciso momento,<br />

existen una gran cantidad de elementos tecnológicos que se convirtieron en parte de nuestras vidas tan<br />

rápido como llegaron, de hecho, hay personas que hasta no pueden concebir su vida sin alguno de estos<br />

aparatos. Digamos que yo tengo un sentimiento parecido con mi PlayStation® 3, pero no va al caso…<br />

del libro, lo que sí va al caso del libro es la libertad de elementos en donde las personas hacen su vida<br />

cotidiana, en donde revisan su correspondencia, ven videos, fotos, se contactan con viejos amigos del<br />

colegio y así. Todo esto estoy seguro que impactará a cualquier persona que se congeló en los años 90 y<br />

viene despertando en estos días.<br />

De hecho, analicemos la historia de la humanidad hasta ahora: la única forma de expresión de los hombres<br />

de las cavernas era dentro las rocas en donde se refugiaban, después se inventó el papel, la escritura, se<br />

podía mantener un registro más perpetuo sobre piedra trabajada. Los procesos se siguieron puliendo, la<br />

maquina aumentó la rapidez y producción de elementos y la era digital nos ha transportado a un mundo<br />

completamente nuevo e instantáneo, y ahora nos lleva a un universo en donde la multiplataforma es pan<br />

de cada día, en donde cada persona joven está conectada a, por lo menos, dos o tres pantallas a la vez.<br />

3 RESPONSIVE WEB DESIGN — Capítulo 1: Nuestro mundo sensible


Ahora, cómo se aplica esto a nosotros que trabajamos con las imágenes, qué pasa con los diseñadores<br />

en general. Hasta ahora la adaptación de nuevas tecnologías no ha dado muchos problemas a los<br />

diseñadores gráficos, inclusive, hay veces que el mismo diseño se ha beneficiado enormemente<br />

debido a una actualización de un software por ejemplo, pero el medio que más se fortaleció con<br />

todos estos cambios ha sido el del diseño web. Piensa, ahora para un mismo proyecto tienes tres o<br />

cuatro lienzos para trabajar… a la vez. El ejemplo más cercano que se tiene es este mismo libro, el<br />

cuál lo puedes imprimir, ver desde tu computador, o desde un dispositivo móvil. Estamos dentro de<br />

un mundo completamente adaptado y sensible y es imposible salir de él, y ya es hora de empezar<br />

a adaptarse. Es como en Matrix, en donde tenías la opción de tomar la pastilla azul y conocer la<br />

verdad o tomar la pastilla roja y vivir en ese mundo de mentiras. Bueno, si sigues más allá de este<br />

capítulo te aseguro que habrás tomado la pastilla azul (no, no esa otra “pastilla azul”), y verás más<br />

allá del web.<br />

ALGO MÁS PARA COMENZAR<br />

Hace mucho tiempo, en un lugar muy lejano, John Allsopp escribió un ensayo llamado “Un Dao de<br />

Diseño <strong>Web</strong>” (http://www.alistapart.com/articles/dao/), en el cuál John dice:<br />

‘El control que los diseñadores tienen sobre el medio impreso, y en el cuál desean comúnmente en el<br />

medio web, es simplemente una función de la limitación de la página impresa. Deberíamos entender<br />

el hecho que la web no tiene las mismas restricciones, y diseñar para esa flexibilidad. Pero primero,<br />

debemos “aceptar el flujo de las cosas”.’<br />

Aunque no se crea, ese ensayo se escribió hace unos diez años, en donde internet era una herramienta<br />

importante, pero no tenía el impacto social que tiene ahora. Nótese que ya se hablaba de flexibilidad<br />

hace diez años, ahora esa flexibilidad está ahí y hay que aceptarla tal como es y aceptar como las<br />

cosas fluyen y en dónde fluyen, y como las cosas siguen fluyendo, el diseño web se adaptó a ese<br />

flujo. Ahora existen diseñadores que tienen conciencia de este flujo y saben que hay que generar<br />

experiencias distintas, dependiendo de dónde esté viendo la página. El mejor ejemplo que pude<br />

encontrar fue un simple artículo de la bbc:<br />

http://www.bbc.co.uk/news/mobile/science-environment-13095307<br />

Si analizan la dirección con más cuidado, uno se fija en la carpeta /mobile/ dentro de la URL. Ya<br />

con eso le dicen al usuario que, cada vez que vean esta página a través de un dispostivo móvil,<br />

tendrá una experiencia única de la misma página en su versión de escritorio. De hecho, si hacen el<br />

experimento de quitar el /mobile/ de la dirección, verán que es la misma noticia, pero una mayor<br />

cantidad de elementos, los cuales se permiten dentro del formato de escritorio. Todo es cosa de<br />

contexto.<br />

4 RESPONSIVE WEB DESIGN — Capítulo 1: Nuestro mundo sensible


FIG.2<br />

FIG.1<br />

FIG.1 es el link que se mostró anteriormente, pero visto desde un iphone, mientras que la FIG.2 es la misma página, pero vista<br />

sin el /mobile/ y en una pantalla más grande. Fíjense que la carpeta /mobile/ es la que da la experiencia fluida y dinámica a la<br />

página web y deja que se adapte donde uno la esté viendo.<br />

5 RESPONSIVE WEB DESIGN — Capítulo 1: Nuestro mundo sensible


COSA DE CONTEXTO<br />

El contexto, según la RAE, tiene dos acepciones:<br />

1. m. Entorno lingüístico del cual depende el sentido y el valor de una palabra, frase o fragmento<br />

considerados.<br />

2. m. Entorno físico o de situación, ya sea político, histórico, cultural o de cualquier otra índole, en el cual<br />

se considera un hecho.<br />

En resumen, el contexto es el entorno físico o de situación a partir del cual se considera un hecho.<br />

Si ponemos todas estas lindas palabras en función del diseño web, tenemos que cuando se habla de<br />

entorno físico, se refiere a los dispositivos disponibles en donde te puedes conectar a internet, y sus<br />

respectivos navegadores. La situación se refiere al ahora ya en donde el entorno físico se desarrolló y<br />

el hecho que junta todos estos puntos en un contexto le llamaremos <strong>Responsive</strong> web design. Ahora,<br />

la pregunta es “¿y qué es el <strong>Responsive</strong> <strong>Web</strong> <strong>Design</strong>?”. <strong>Responsive</strong> <strong>Web</strong> <strong>Design</strong> se trata de cómo una<br />

página se convierte en “sensible”, e identifica en el dispositivo en donde se está mostrando – como un<br />

computador de escritorio, tableta o teléfono – y se adapta a ese dispositivo sin perder contenido, o sea,<br />

de “fluir en el contexto” en el cuál se le presenta.<br />

En conclusión, hay que abrazar al responsive web design, impregnarnos con la flexibilidad de la web,<br />

sin el control que requerimos como diseñadores. Todo esto con tecnologías ya estandarizadas para hacer<br />

nuestro trabajo, y haciendo un pequeño pero gran cambio en nuestra filosofía hacia el diseño web.<br />

LOS INGREDIENTES<br />

Entonces, qué es lo necesario para hacer una página estática, rígida y… “fome”, abrace al <strong>Responsive</strong> <strong>Web</strong><br />

<strong>Design</strong>. Hablando en términos puramente de diseño web front-end, es necesario sólo tres ingredientes:<br />

1. Una diagramación basada en una grilla flexible.<br />

2. Imágenes y media flexibles, y<br />

3. Media queries, un módulo específico de CSS3.<br />

Durante los próximos capítulos desmenuzaremos estos tres puntos – la diagramación flexible, el media<br />

e imágenes flexibles y los media queries - haciendo que nuestro diseño web tenga un acercamiento<br />

más flexible y fluido. Además, de adaptarse a la mayoría de las plataformas y a todos los navegadores,<br />

haciendo que nuestro diseño responda casi a todas las necesidades de los usuarios. Pero entre tantas<br />

palabras, los que trabajamos con gráfica nos enredamos y necesitamos ejemplos visuales para entender<br />

cómo funcionan las cosas. Para este caso, voy a mostrar el ejemplo más cercano que se me pudo ocurrir:<br />

la misma página web en donde descargaron este libro digital ( http://rwd.webuda.com/).<br />

6 RESPONSIVE WEB DESIGN — Capítulo 1: Nuestro mundo sensible


Desde que este proyecto empezó a emerger, el tener una página web que reflejara todo el trabajo<br />

teórico llevado a algo práctico era más que necesario. Además, siendo honestos, no tener una página<br />

fluida y flexible – en donde descargarás un libro / manual sobre un sistema fluido y sensible de web<br />

– es algo bastante ridículo, hasta deprimente.<br />

Algo que siempre se nos recalca en las escuelas de diseño es siempre mirar los detalles, y si no te<br />

lo enseñaron, mejor que lo empieces a ver eso ahora mismo, para el diseño web los detalles son<br />

importantes igual, pero hay que tener cosas en consideración: a pesar de que las páginas tienen<br />

muchas plataformas y navegadores en donde pueden ser mostradas, no es una obligación hacer<br />

que se vea completamente igual en todas ellas, especialmente en el “cuco” más grande que todos<br />

los diseñadores front-end tienen a lo largo de su vida… Internet Explorer (hay algunos que hasta los<br />

persigue en los sueños, algo así como Freddy Krueger), pero aún así, no hay que caer en la flojera de<br />

decir “ah, si es Internet Explorer no más”. Siempre hay que dar un paso más y hacer lo casi imposible<br />

para que la página sea lo más compatible posible para todos los navegadores y dispositivos.<br />

A pesar de que Internet Explorer es el dolor de cabeza de todos los diseñadores web, no tiene que<br />

convertirse en un aneurisma como pasa comúnmente. Esta nueva filosofía de diseño flexible y<br />

adaptable va de la mano con tecnologías estandarizadas ya. Microsoft está haciendo cambios<br />

grandes en temas como diseño de sus productos, hardware y en especial software, ya se han visto<br />

cambios bastante interesantes en los nuevos lanzamientos de este año y también han habido haces<br />

de luz en programas como Internet Explorer 9, a pesar de que aún hay que insistir en elementos que<br />

no son compatibles como con los otros navegadores (Chrome, Firefox, Safari, etc), así que mi consejo<br />

es seguir esperando que los estándares actuales de diseño web sean generalmente compatibles,<br />

pero mientras eso no pase, hay que tener en cuenta esos no tan pequeños detalles. ¿Y porqué estoy<br />

hablando de Internet Explorer de repente?, ah, sí, porque la página web que contiene los archivos<br />

descargables de este libro tiene que ser lo más compatible posible para los navegadores más usados:<br />

Chrome, Firefox, Safari, Internet Explorer, Opera, y sumando también el nuevo concepto que<br />

estamos incorporando ahora, el <strong>Responsive</strong> web design.<br />

Ya, mucho hablar y poca acción. Es hora de ponerse a trabajar.<br />

7 RESPONSIVE WEB DESIGN — Capítulo 1: Nuestro mundo sensible


CAPÍTULO 2<br />

La grilla sensible<br />

UNA DE LAS IDEAS que llevaron a cabo el concepto de <strong>Responsive</strong> <strong>Web</strong> <strong>Design</strong> fue la de tomar la estructura<br />

rígida de las páginas web y llevarlas a un plano flexible y adaptable, como si se pudiera hacer con la<br />

mente. Este pensamiento fue bastante innovador en su tiempo, pero sólo se pudo llevar a cabo como Dios<br />

manda cuando aparecieron dos actores en el diseño web: HTML5 y CSS3.<br />

Lamentablemente el propósito de este manual no es instruir en estos dos temas, así que la persona que<br />

está leyendo esto debería tener por lo menos conocimientos básicos de estos dos lenguajes de maquetación<br />

web. Para los que se saltaron ese párrafo, puedo decir que gracias a las nuevas etiquetas, semántica<br />

y características de estos dos lenguajes se hizo posible transformas las grillas estáticas en forma de<br />

pixeles, a grillas flexibles adaptables a cualquier dispositivo, o sea, hacer las páginas responsive.<br />

A “SANAR EL CONTEXTO”<br />

Sería bastante raro que al leer este título venga uno vestido como chamán a hacerle una «curación» a la<br />

página, manual y todo lo demás. El verdadero sentido del título es sobre la transformación de un estado<br />

rígido a uno flexible de todos los elementos de una página web. Para hacer eso, es necesario transformar<br />

la gráfica que se hizo para la página web en Photoshop o Illustrator, In<strong>Design</strong> (en este caso fue In<strong>Design</strong>)<br />

(FIG.3.) en algo más fluido y proporcional.<br />

8 RESPONSIVE WEB DESIGN — Capítulo 2: La grilla felxible


FIG.3 Un ejemplo de la página web en donde descargaste este manual.<br />

9 RESPONSIVE WEB DESIGN — Capítulo 2: La grilla felxible


TIPOGRAFÍA FLEXIBLE<br />

Para esta parte vamos a tomar el ejemplo más cercano que se pudo encontrar en el manual, el cual justo<br />

es la página web en donde descargaste el manual, de ahí nos vamos a enfocar en el título de la página.<br />

Este título viene con el siguiente código:<br />

<br />

<br />

<br />

<strong>Responsive</strong> <strong>Web</strong> <strong>Design</strong><br />

Todo lo que necesitas saber para hacer diseños web sensibles<br />

Acá tendrás el manual en español, hecho por y para diseñadores sobre<br />

responsive web design. ¿Crees que puedes manejar ser tan cool?.<br />

<br />

<br />

Bonito ¿no?, pero aún así lo que sale acá es sólo texto plano (FIG.4). Para darle estilo y diseño hay que<br />

utilizar código CSS, que en este caso sería algo como esto:<br />

FIG4. Con código de HTML5 sólo aparecerá esto, un estilo de nada.<br />

#titulo h1{<br />

}<br />

font-family:helvetica_med_con, helvetica, sans-serif;<br />

font-size:72px;<br />

margin-top:40px;<br />

margin-bottom:0;<br />

10 RESPONSIVE WEB DESIGN — Capítulo 2: La grilla felxible


#titulo h2{<br />

}<br />

font-family:meta_serif_book, georgia, serif;<br />

font-size:24px;<br />

margin-top:0;<br />

#titulo h3{<br />

}<br />

font-family:meta_serif_book_ita, georgia, serif;<br />

font-size:16px;<br />

Y gracias a la maravilla de CSS, logramos convertir a este adefecio visual en...<br />

FIG5. ... ¡Esto!.<br />

11 RESPONSIVE WEB DESIGN — Capítulo 2: La grilla felxible


Ahora sí que se ve «bonito» y agradable a la vida. Analicemos rápidamente lo que vieron: la etiqueta<br />

contiene tres etiquetas de títulos (, , ) y cada una tiene un tipo de fuente<br />

específica (font-family), pero tienen un tamaño rígido (font-size) al medirlos a través de pixeles. No<br />

tiene nada de malo eso, pero para el propósito de una página web fluida, es indispensable cambiarlos<br />

por valores flexibles. Entonces, en vez de px usaremos em.<br />

FLEXIBILIZANDO EL CONTEXTO<br />

Para hacer esto, se tiene que crear el siguiente ejercicio matemático: se toma el tamaño de la fuente y se<br />

divide por el font-size del elemento que lo contenga — en otras palabras, su contexto. El resultado será<br />

que nuestra fuente quedará en un valor em fluido, en vez de px.<br />

En otras palabras, las tipos relativas pueden ser calculadas con la siguiente fórmula:<br />

Objetivo ÷ Contexto = Resultado<br />

Con esta fórmula, ahora podemos calcular el tamaño de nuestras etiquetas , y , que<br />

están dentro del .<br />

Asumiendo que nuestro font-size de base sea de un 100%, nuestro número de contexto será de 16px.<br />

Ahora, se tiene que tomar el tamaño que se usó en primer lugar para las etiquetas ( en este caso) y<br />

dividirlo por su contexto (16px), quedando esto:<br />

70 ÷ 16 = 4.5<br />

Entonces, con esto decimos que 70 es 4.5 veces mayor que 16, o sea, nuestro font-size para es<br />

de 4.5em. Después de eso usamos la misma fórmula para las otras dos etiquetas que faltan, para que<br />

queden:<br />

24 ÷ 16 = 1.5<br />

16 ÷ 16 = 1<br />

Gracias a esto se sabe que el font-size de es de 1.5em y el de de 1em. Con estos cálculos<br />

ya listos se va al CSS y quedan de la siguiente forma:<br />

#titulo h1{<br />

}<br />

font-family:helvetica_med_con, helvetica, sans-serif;<br />

font-size:4.5em; /* 70px / 16px */<br />

margin-top:40px;<br />

margin-bottom:0;<br />

12 RESPONSIVE WEB DESIGN — Capítulo 2: La grilla felxible


#titulo h2{<br />

}<br />

font-family:meta_serif_book, georgia, serif;<br />

font-size:1.5em; /* 24px / 16px */<br />

margin-top:0;<br />

#titulo h3{<br />

}<br />

font-family:meta_serif_book_ita, georgia, serif;<br />

font-size:1em; /* 16px / 16px */<br />

Y… ¡listo!, nuestros títulos están listos y encajan en nuestro diseño flexible gracias a ems remedibles y<br />

escalables.<br />

CREANDO LA GRILLA FLEXIBLE<br />

La clave de transformar el contenido fijo a flexible no es algo que queda sólo para las fuentes, tiene que<br />

ser aplicado a todos los elementos dentro de la una página web. Al flexibilizar la grilla nos generamos uno<br />

de las características más importantes dentro de un diseño web responsive, el cual es que el contenido<br />

de la página se pueda redimensionar dependiendo del tamaño en donde se esté viendo. Para esto es<br />

necesario transformar los valores fijos por valores relativos, que en este caso son porcentajes.<br />

Modificar tu grilla a flexible puede ser algo tan fácil que se puede hacer en cinco pasos:<br />

13 RESPONSIVE WEB DESIGN — Capítulo 2: La grilla felxible


Paso 1<br />

Ve la grilla: tienes que saber cómo y dónde pusiste cada elemento de tu página antes de hacerle cualquier<br />

modificación (FIG.6). Además, tienes que analizar cuáles serán las áreas dentro de tu página web. (FIG.7)<br />

14 RESPONSIVE WEB DESIGN — Capítulo 2: La grilla felxible<br />

FIG.6 La página web con su grilla<br />

respectiva. Recuerda que el diseño y<br />

diagramación de una página web tiene<br />

que estar basado en una grilla.<br />

FIG.7 Al dividir de esta manera la página,<br />

ya se sabe cuáles son los elementos que<br />

tienen que transformarse en flexibles


Paso 2<br />

Escribe el código: Aunque existen varios software que prácticamente te hacen el código de una página<br />

web, es primordial que aprendas a como hacerlo<br />

<br />

¿Qué es responsive web design?<br />

<strong>Responsive</strong> web design es un término que se está haciendo cada día<br />

más común entre los diseñadores gráficos y web en el mundo, pero que está llegando<br />

muy tarde por estas tierras...<br />

<br />

<br />

Descargar manual iPad<br />

Este manual está pensado para verse en un iPad, puedes acceder a él a<br />

través de la App Store de Apple. Descarga, conecta, sincroniza y disfruta.<br />

<br />

<br />

No tengo iPad, ¿qué hago?<br />

Si no tienes iPad no te preocupes. Abajo hay una variedad de archivos para<br />

que puedas leer este manual desde otro computador, otros tablets (como Android o<br />

Kindle) o desde Readmill.<br />

<br />

El código HTML.<br />

15 RESPONSIVE WEB DESIGN — Capítulo 2: La grilla felxible


#que-es, #descarga, #no-ipad{<br />

}<br />

width:320px;<br />

height:180px;<br />

padding-right:15px;<br />

position:relative;<br />

float:left;<br />

font-size:0.875em;<br />

line-height:20px;<br />

cursor:pointer;<br />

#que-es p, #descarga p, #no-ipad p{<br />

}<br />

color:#666;<br />

cursor:auto;<br />

#que-es h1:hover, #descarga h1:hover, #no-ipad h1:hover{<br />

}<br />

text-decoration:underline;<br />

Un extracto de la hoja de estilos CSS.<br />

Paso 3<br />

Mide las columnas: Para saber qué transformar, primero hay que saber cuáles serán las medidas fijas<br />

de cada columna, sección o elemento de la grilla. Lo importante es saber el tamaño total del contenedor<br />

de la página y, además, de cada sección.<br />

16 RESPONSIVE WEB DESIGN — Capítulo 2: La grilla felxible


Paso 4<br />

Aplicar la fórmula: La fórmula que se mostró antes, que era Objetivo ÷ Contenido =<br />

Resultado, ahora se aplica a los tamaños de las etiquetas. Para este caso, cuando se quiera<br />

modificar el tamaño del contenedor de los cuadros de información (320px), tomamos el<br />

tamaño del Objetivo, que ahora es de 980px y lo dividimos por el contenido en cuestión:<br />

320 ÷ 980 = 0,32653061 * 100 = 32,653061<br />

Después se le agregó un último paso que es multiplicar por cien. A pesar que la<br />

calculadora lo toma como un número, nosotros tenemos que tener en cuenta que<br />

estamos multiplicando por 100%, para así tener un porcentaje real y que se pueda<br />

aplicar a la hoja de estilo CSS. Abajo va el ejemplo:<br />

17 RESPONSIVE WEB DESIGN — Capítulo 2: La grilla felxible


#que-es, #descarga, #no-ipad{<br />

}<br />

width:32.653061%; /* 320px / 980px * 100% */<br />

Recuerda que también puedes aplicar a todas las propiedades de CSS que apliques que<br />

tengan medidas en px, como por ejemplo margin, padding, height, y más.<br />

Paso 5<br />

Voilà!: Nuestra página web al fin tiene su grilla fluida. Abajo pueden ver cómo una grilla<br />

flexible, con medidas dinámicas hechas a través de porcentajes en vez de px se adapta<br />

casi por arte de magia al dispositivo en que se encuentre (FIG.8). Eso sí, no sólo de grillas<br />

viven las páginas web responsive, también hay otros dos características necesarias para<br />

esto: que son las imágenes flexibles y los media queries.<br />

FIG.7 En distintos tamaños de pantalla, la grilla flexible empieza a trabajar.<br />

18 RESPONSIVE WEB DESIGN — Capítulo 2: La grilla felxible


CAPÍTULO 3<br />

Imágenes flexibles<br />

HASTA AHORA EL PRIMER ingrediente para hacer nuestro sitio web responsive, la grilla flexible, está<br />

listo. Es momento de mirar hacia el segundo ingrediente, que son las imágenes flexibles. Como pasó<br />

con la grilla, las imágenes tienen medidas fijas, si se les deja con esas medidas van a haber problemas<br />

cuando la página se tenga que reacomodar a un navegador pequeño, como el de los smartphones, porque<br />

el navegador entiende que la grilla está en porcentajes y que la tiene que acomodar a su tamaño, pero las<br />

imágenes tienen un ancho fijo. Entonces, ¿qué pasará si usamos un ancho dinámico en la grilla flexible?,<br />

ese es el propósito de este capítulo.<br />

Desde el principio que se ha mencionado como ejemplo la página en donde pudiste bajar este manual (y<br />

seguiré dando el link, para que no te olvides: http://rwd.webuda.com/). Después de las secciones del<br />

menú y de descarga, se pusieron seis imágenes con ejemplos de páginas que también han “abrazado”<br />

al responsive web design y lo han hecho una parte de ellos. A continuación verás cómo estas imágenes<br />

dejaron de tener un ancho fijo aburrido y pasaron a una divertida medida dinámica.<br />

IMÁGENES FLUIDAS<br />

Cuando se tiene que incrustar una imagen en una página web, lo primero que uno piensa instintivamente<br />

es en la etiqueta . A pesar de que ya estamos en HTML5 y ya pasó toda la vorágine de cambios en<br />

la estructura y semántica de maquetación web, las imágenes se siguen agregando a las páginas de esa<br />

manera. También lo que se puede hacer es tener una etiqueta vacía y después insertar la imagen a<br />

través de CSS con background-image, pero usaremos la primera opción para este ejemplo.<br />

El primer ejemplo es de la página web de Sony®. Creo que es uno de las mejores páginas web resonsive<br />

que hay allá afuera, por eso está primera en la lista de ejemplos. Ahora, en nuestra página web el código<br />

en donde irá la imagen es así:<br />

19 RESPONSIVE WEB DESIGN — Capítulo 3: Imágenes flexibles


<br />

<br />

<br />

<br />

Sony<br />

<br />

<br />

<br />

<br />

Ésta es la imagen que queremos mostrar (FIG.8) y de esta forma se verá con el código (FIG.9)<br />

FIG.8 Si bien no hay nada malo con la imagen, su tamaño puede causar problemas (1249 × 697)<br />

20 RESPONSIVE WEB DESIGN — Capítulo 3: Imágenes flexibles


FIG.9 Y dio problema. A pesar de que se ve bien dentro del contenedor, la idea de los ejemplos es mostrar<br />

tres por línea.<br />

Ahora, el elemento img se va a renderizar a cualquier tamaño que se le ocurra, siempre que sea más<br />

angosto que el elemento en que se contenga. Pero qué tal si la imagen es más grande que su contenedor,<br />

entonces el max-width: 100% fuerza a que el ancho de las imágenes coincidan con el tamaño del<br />

contenedor en el que están. (FIG.10)<br />

img{<br />

}<br />

max-width:100%;<br />

21 RESPONSIVE WEB DESIGN — Capítulo 3: Imágenes flexibles


FIG.10 La imagen se ajustó al tamaño que ya tenía el contenedor y que fue calculado con la fórmula que se usó<br />

en el capítulo 2 para la grilla flexible.<br />

Más aún, los navegadores han evolucionado de tal manera que redimensionan las imágenes<br />

proporcionalmente. Como nuestra página web se redimensiona por sí sola, al encoger o alargar la<br />

imagen, su proporción se mantendrá intacta. Además, max-width: 100% también se puede aplicar a<br />

casi todos los elementos con un ancho fijo (fixed-width), como video u otros medios. De hecho, podemos<br />

fortalecer el selector para cubrir otros elementos multimedia, así:<br />

img, embed, object, video{<br />

}<br />

max-width:100%;<br />

Sea un video de flash, u otro medio adjunto, o un humilde img, los navegadores hacen un muy buen<br />

trabajo al redimensionarlos proporcionalmente en una grilla flexible, todo gracias a nuestro querido<br />

elemento max-width.<br />

22 RESPONSIVE WEB DESIGN — Capítulo 3: Imágenes flexibles


EL PLACER DE ESTAR “OCULTO”<br />

Como había mencionado antes, hay varios métodos para hacer que las imágenes de tu página web sean<br />

flexibles, uno de ellos es utilizar la propiedad overflow. En la mayoría de los casos, la regla max-width:<br />

100% es la mejor alternativa para redimensionar las imágenes, pero de forma alternativa puedes eliminar<br />

el exceso de datos dentro del contenedor con overflow: hidden. Entonces, es vez de que la imagen se<br />

redimensione automáticamente se puede eliminar toda la información sobrante.<br />

#view{<br />

}<br />

#view img{<br />

}<br />

overflow: hidden;<br />

display: block;<br />

overflow: hidden;<br />

Como pueden ver, esta no es una solución totalmente fiable. De hecho, se ha encontrado que en la<br />

mayoría de los casos overflow es generalmente menos útil que escalar la imagen vía max-width. Pero<br />

aún así, es una opción que se tiene que considerar y encontrarle un uso para alguna ocasión en especial.<br />

Hasta ahora hemos explorado todo lo que se necesita para desarrollar sitios web flexibles, acordes a los<br />

dispositivos actuales, mejor dicho, sitios responsive. Con las herramientas y características que se han<br />

mostrado antes ya están preparados para poder hacer sitios con grillas flexibles y con imágenes auto<br />

redimensionadles, sólo es cosa de que ponerse a estudiar, aplicar y trabajar en lo que he mostrado y las<br />

cosas que han quedado afuera.<br />

Con nuestro cimiento flexible en lugar, es hora de poner el último ingrediente a nuestro diseño responsive.<br />

23 RESPONSIVE WEB DESIGN — Capítulo 3: Imágenes flexibles


CAPÍTULO 4<br />

Media queries<br />

CON LAS HERRAMIENTAS QUE se han dado durante el paso del manual están “casi” listos para hacer sitios<br />

web flexibles. Por qué “casi”, porque inclusive en este punto la página web no es a prueba de balas.<br />

Van a haber partes en donde nuestro diseño se rompa cuando se redimensione, o sea, hay algo que está<br />

saliendo mal o el navegador no entiende bien lo que quisimos decir al principio en nuestro código.<br />

Desde que empezamos a trabajar con nuestro sitio flexible, podemos probarlos redimensionando el<br />

tamaño de nuestro navegador a distintos anchos. Ahora, esto no es un substituto para no probar nuestro<br />

sitio en los distintos dispositivos en el cual vamos a trabajar, pero nos permite un acceso rápido a nuestro<br />

sitio es varios tamaños disponibles, y simular cómo se verá en smartphones, tablets, y otros dispositivos<br />

que tengamos que usar.<br />

En este momento es donde tenemos que usar el tercer y último ingrediente esencial para nuestra página<br />

web flexible, que son los media queries.<br />

¿MEDIA QUÉ?<br />

Media Queries (http://bkaprt.com/rwd/27/) es una característica única de CSS3, que se hizo<br />

gracias a los media types que venían en las versiones anteriores de este lenguaje de programación.<br />

Es un mecanismo robusto que, no sólo identifica tipos de media, sino que también inspecciona las<br />

especificaciones físicas de los dispositivos y navegadores que renderizan el contenido.<br />

Aquí va un ejemplo:<br />

24 RESPONSIVE WEB DESIGN — Capítulo 4: Media Queries


@media screen and (min-width: 1024px) { body {<br />

}<br />

}<br />

font-size: 100%;<br />

Cada media query — incluyendo el que se mostró arriba — consta de dos partes:<br />

1. Cara query empieza con un media type (screen), viniendo de las especificaciones de CSS2.1<br />

aprobadas para los media types. (http://bkaprt.com/rwd/26/).<br />

2. Inmediatamente después viene el query en sí, envuelto en paréntesis. (min-width: 1024px).<br />

Ahora, nuestro query se puede dividir en dos componentes: el nombre de la característica (min-width)<br />

y su valor correspondiente (1024px).<br />

Piensa cómo un navegador analiza un media query. Cuando el navegador lea tu hoja de estilos, el screen<br />

and (min-width: 1024px) hace dos preguntas: la primera es que si pertenece al media type screen<br />

y la segunda si el espacio del navegador es, de al menos 1024 pixeles de ancho. Si el navegador coincide<br />

con los dos criterios, entonces el código que se encuentra dentro del query se ejecutará, y si no es así, el<br />

navegador felizmente evitará ese estilo y seguirá con su vida.<br />

El media query de arriba es parte de una declaración @media, lo que permite poner queries directamente<br />

en nuestra hoja de estilos CSS. Aunque también se pueden poner queries en un elemento link<br />

insertándolo en el atributo media:<br />

<br />

IDENTIFICANDO LOS PUNTOS DE RESOLUCIÓN<br />

Los puntos de resolución son los quiebres que tienes que hacer para saber en dónde aplicar los media<br />

queries que necesitas para tu página web. Eso no quiere decir que las resoluciones que no aparezcan<br />

acá se tienen que ignorar, o que algunos dispositivos no se acomodarán a alguna resolución que no<br />

esté en lista, dado que el diseño responsive está basado en una grilla flexible, entonces hay un grado<br />

de independencia en su construcción. Pero al mostrar los queries como se hará a continuación ayuda<br />

a definir un alcance a nuestros esfuerzos, permitiendo idenfiticar los dispositivos más usados por los<br />

clientes y cómo funcionar de la mejor manera a través de las resoluciones.<br />

25 RESPONSIVE WEB DESIGN — Capítulo 4: Media Queries


320 px<br />

Para dispositivos con pantallas pequeñas, como los<br />

smartphone, en tamaño vertical.<br />

480 px<br />

Para dispositivos con pantallas pequeñas, como los<br />

smartphone, en tamaño horizontal.<br />

26 RESPONSIVE WEB DESIGN — Capítulo 4: Media Queries


600 px<br />

Tablets pequeños, como el Amazon Kindle, en<br />

tamaño vertical.<br />

768 px<br />

Tablets de 10 pulgadas, como el iPad (1024 x 768),<br />

en tamaño vertical.<br />

27 RESPONSIVE WEB DESIGN — Capítulo 4: Media Queries


1024 px<br />

Tablets como el iPad (768 x 1024), en tamaño<br />

vertical, también como algunos laptops, netbooks y<br />

computadores de escritorio.<br />

28 RESPONSIVE WEB DESIGN — Capítulo 4: Media Queries


1200 px<br />

Pantallas anchas (widescreen), de laptop y<br />

computadores de escritorio.<br />

29 RESPONSIVE WEB DESIGN — Capítulo 4: Media Queries


CAPÍTULO 5<br />

Más sobre responsive<br />

AL FIN TIENES TODAS las herramientas necesarias para diseñar páginas web responsive. Has logrado<br />

manejar la idea detrás de la grilla flexible, investigado algunas estrategias para incorporar elementos de<br />

multimedia dinámicos a tu diseño, y explorado como los media queries pueden llevar a nuestros diseños<br />

más allá del escritorio.<br />

En este capítulo analizaremos algunos conceptos e ideas que mejoran el diseño responsive. Veremos<br />

formas diferentes de agregarlas a nuestro trabajo, y como mejorar algunas técnicas que hemos aprendido<br />

durante el transcurso de este manual.<br />

PRIMERO EL MÓVIL<br />

Hacia finales del 2009, el diseñador Luke Wroblewski lanzó un pequeño desafío a la industria, sugiriendo<br />

que la experiencia móvil de un diseño web no tiene que ser una idea tardía (http:// bkaprt.com/<br />

rwd/47/). Citando el crecimiento explosivo del tráfico web móvil, Wroblewski sugirió que que los<br />

profesionales web de hoy deben diseñar para el móvil primero.<br />

“Mobile first” (o “móvil primero”) esa una filosofía de diseño, de hecho, es una de las filosofías invaluables<br />

para el diseño web responsive. Mientras más navegadores y dispositivos nuestros clientes usen para<br />

acceder a nuestros diseños, más interés se tiene en diseñar fuera del escritorio. Es una oportunidad<br />

perfecta para repensar en cómo se ha diseñado la web: nuestro proceso, como también las preguntas que<br />

usamos y cuáles serían las soluciones que podemos aplicar.<br />

30 RESPONSIVE WEB DESIGN — Capítulo 5: Más sobre responsive


REPASA LA “MEJORA PROGRESIVA”<br />

La mejora progresiva (o “progressive enhacement”) es otra estrategia de diseño web que acentúa la<br />

accesibilidad, margen de la semántica, y tecnologías externas de manera que permite que cada uno<br />

tenga acceso a la funcionabilidad básica de una página web, a través de cualquier navegador.<br />

Durante el 2003, Nick Finck y Steve Champeon acuñaron el término “progressive enhacement”, desde<br />

entonces ha sido la marca para un alcance responsable para un diseño web estándar. Empezando con<br />

una semántica fuerte, marcas bien definidas, estilos hechos con CSS, y scripts de DOM a través de<br />

JavaScript cuando se necesite, se pueden crean experiencias completas a través de diseño web, mientras<br />

se asegura un acceso universal del contenido a través del diseño.<br />

Steven Hay también reiteró la necesidad de mejora progresiva, a través de su ensayo (en inglés) “No hay<br />

web móvil” (http://bkaprt.com/rwd/54 /):<br />

“la mayoría de los sitios en la web no están hechos con usos específicos para web. En cambio, millones de<br />

personas acceden a estos sitios cada día a través de dispositivos móviles. Ellos a sitios webs “normales” (lo<br />

que sea que eso quiera decir) a través de sus dispositivos “móviles”.<br />

…<br />

para ser honesto, puedo pensar en un par, pero no tantos usas de sitios webs o aplicaciones los cuales son<br />

o deberían ser exclusivos para móviles. Pareciese que la web móvil nos permite revivir toda la charla de<br />

inclusión, mejora progresiva y accesibilidad de hace años.”<br />

En vez de simplemente depositar nuestro contenido en diferentes sitios, podemos usar la mejora<br />

progresiva para aquellos dispositivos que sea capaces de soportarla.<br />

SÉ RESPONSABLE CON EL RESPONSIVE<br />

Se mencionaron estas mejoras no porque sean necesariamente las mejores. En este tiempo de 3G hotspots<br />

portables y teléfonos habilitados con wifi, puede ser peligroso igualar automáticamente la dimensión de<br />

una pantalla con el ancho de banda disponible para ello. Pero si necesitas algo de resolución extra en tu<br />

trabajo, estas herramientas están disponibles.<br />

Aún así, que es beneficioso en mantener la filosofía de “móvil primero” en mente cuando te encuentras<br />

en una situación en donde se amerita. Porque más que nada, el diseño web es sobre hacer la respuesta<br />

correcta. Y realmente, de eso se trata el diseño responsive: una posible solución, una forma más para<br />

diseñar la web de forma flexible. En el primer capítulo, dije que los ingredientes para el diseño responsive<br />

son una grilla flexible, imágenes flexibles y media queries. Pero realmente, ellos son el vocabulario que<br />

usaremos para articular respuestas a los problemas que nuestros clientes se enfrentan, una forma para<br />

ordenar el contenido a un sinfín de dispositivos y navegadores.<br />

Si estamos dispuestos a investigar en las necesidades de nuestros clientes, y aplicar estos ingredientes<br />

cuidadosamente, entonces el diseño web responsive es un alcance poderoso.<br />

31 RESPONSIVE WEB DESIGN — Capítulo 5: Más sobre responsive


Este sitio web y manual fueron creados para el proyecto para optar al título de<br />

Diseñador Gráfico Publicitario: Diseño editorial digital de «responsive web design»<br />

(diseño web sensible)<br />

INSTITUCIÓN ENCARGADA DEL PROYECTO<br />

ALUMNO TESISTA<br />

Esta obra está bajo una Licencia Creative Commons Atribución-NoComercial-SinDerivadas 3.0 Unported.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!