Download - HTML Tour - Responsive Web Design

Transcript
Page 1: HTML Tour - Responsive Web Design

Responsive Web Design

Page 2: HTML Tour - Responsive Web Design

¿Quién soy?

www.plainconcepts.com

UX Developer at Plain [email protected]#htmltour

Proyectos destacados:

Jesús David García Gómez

Page 3: HTML Tour - Responsive Web Design

Preguntas/dudas/sugerencias

#htmltour

Page 4: HTML Tour - Responsive Web Design

Dispositivos

Page 5: HTML Tour - Responsive Web Design

Índice

• Grid Flexible• Imágenes flexibles• Media queries• Progressive Enhacement vs Graceful degradation• Progressive Enhacement

Page 6: HTML Tour - Responsive Web Design

Grid Flexible

• Web fluida.

• Cuando la web se redimensione, toda la web se irá amoldando al ancho disponible.

• Utilizar porcentajes y em’s.

• No utilizar medidas fijas.

Page 7: HTML Tour - Responsive Web Design

¿Cómo se hace?

• Fijamos unas medidas base (fijas)

• Aplicamos la siguiente función:• Objetivo / contenedor = resultado.

Page 8: HTML Tour - Responsive Web Design

Consideraciones

• Si es para un margen, el contenedor es el que contiene al elemento al que le queremos aplicar el margen.

• Si es para un padding, el contenedor es el propio elemento al que le queremos aplicar el padding.

Page 9: HTML Tour - Responsive Web Design

Imágenes Flexibles

• Imágenes fluidas.

• Utilizamos max-width al 100%.img {

max-width: 100%}

• Envolveremos la imagen con una capa para dar el tamaño deseado.

Page 10: HTML Tour - Responsive Web Design

Imágenes Flexibles

• Y si max-width no se soporta?

width: 100%.

• Problema: la imagen puede pixelarse.

• Si la imagen es grande, no da problemas.

Page 11: HTML Tour - Responsive Web Design

Background

• Imagen de x pixeles, replicada en x/y

• Background-size

background-size: auto; /*se verá en tamaño original*/background-size: 180px 90px; /*se verá al tamñao especificado*/background-size: contain; /*se ajusta al tamaño de la ventana manteniendo el aspect ratio*/background-size: cover; /*cubre todo el background*/

Page 12: HTML Tour - Responsive Web Design

Media Queries

• Adaptar nuestra web según el entorno.

• Se utiliza la propiedad media si estamos en el elemento link.

<link rel="stylesheet" href="main.css" media="screen" /> <link rel="stylesheet" href="paper.css" media="print" />

Page 13: HTML Tour - Responsive Web Design

@media

• Nos permite definir el media type y características físicas del dispositivo

@media screen and (min-width: 1024px) { body { font-size: 100%; }}

Page 14: HTML Tour - Responsive Web Design

Media types

• Screen: Monitor a color.• Projection: proyectores.• Braille: dispositivos táctiles braille.• Tv: televisores.• Etc.

http://www.w3.org/TR/CSS21/media.html#media-types

Page 15: HTML Tour - Responsive Web Design

Queries

Page 16: HTML Tour - Responsive Web Design

Progressive Enhacemen vs Graceful degradation

Page 17: HTML Tour - Responsive Web Design

Graceful degradation

• Mejor experiencia de usuario posible.

• Orientado al navegador.

• Énfasis en la tolerancia a fallos.

Page 18: HTML Tour - Responsive Web Design

Progressive Enhancement

• Orientado al contenido.

• Hacer versión con funcionalidad básica.

• Mejorar a partir de dicha funcionalidad.

Page 19: HTML Tour - Responsive Web Design

Separación en capas

Page 20: HTML Tour - Responsive Web Design

¿Cómo se hace?

• Markup: HTML bien formado, para la interoperabilidad.

• Styling: Mejora progresiva del look-and-feel del diseño, para navegadores con mejores características (ej. Navegadores webkit, IE9/10, etc.)

• Behaviors: Mejoramos el sitio añadiendo características interactivas usando javascript.

Page 21: HTML Tour - Responsive Web Design

Beneficios

• Accesibilidad: Contenido alcanzable para todos los usuarios.

• Portabilidad: Soporte cross-browser y cross-device.

• Modularidad: Componentes desacoplados.

• Rendimiento: Mejoras en términos de tiempo de carga.

Page 22: HTML Tour - Responsive Web Design

Guidelines

• Separar HTML, CSS y Javascript en ficheros diferentes.

• Evitar código específico de un navegador y usar detección de características, no detección de navegador.

• Hacer pruebas con javascript desactivado, para comprobar que no podemos hacer y presentar una alternativa.

Page 23: HTML Tour - Responsive Web Design

No todo es de color de rosa

• Utilizar progressive enhancement requiere más trabajo.

• Requiere revisar la semántica y la flexibilidad del markup.

• Escribir css extra para aprovechar las características de CSS3 y html5, cuando es soportado.

Page 24: HTML Tour - Responsive Web Design

Progressive Enhacement 2.0

OMG CSS OMG JS

Nice CSS Nice JS

Base CSS Base JS

HTML

Page 25: HTML Tour - Responsive Web Design

En Resumen

• Filosofía de desarrollo web.

• Nos permite crear webs con accesibilidad universal.

• Requiere aprendizaje, disciplina y experiencia.

• Recompensa de la inversión es alta.

Page 26: HTML Tour - Responsive Web Design

Preguntas/dudas/sugerencias

#htmltour