responsive web design (diseño web adaptable)

85
RESPONSIVE WEB DESIGN ADOLFO SANZ DE DIEGO SEPTIEMBRE 2014

Upload: adolfo-sanz-de-diego

Post on 13-Jun-2015

2.251 views

Category:

Design


3 download

DESCRIPTION

En primer lugar hago una introducción, contando que es eso del 'Responsive Web Design' (Diseño Web Adaptable), que beneficios tiene, y cuento la diferencia entre 'Graceful degradation' y 'Progessive enhancement'. Seguidamente, expongo varios ejemplos de sitios web realizados con esa filosofía. Luego entro más en detalle en como conseguir sitios web adaptables: diseño fluido, sistemas de rejilla, imágenes fluidas, viewport, media queries. Para terminar enumero las 2 metodologías más utilizadas hoy en día para hacer diseños adaptables: 'Desktop First' y 'Mobile first'

TRANSCRIPT

Page 1: Responsive Web Design (Diseño Web Adaptable)

RESPONSIVEWEBDESIGN

ADOLFOSANZDEDIEGOSEPTIEMBRE2014

Page 2: Responsive Web Design (Diseño Web Adaptable)

1ELAUTOR

Page 3: Responsive Web Design (Diseño Web Adaptable)

1.1ADOLFOSANZDEDIEGOAntiguoprogramadorwebJEE(6años)Hoyendía:ProfesordeFP(6años):Hardware,SistemasOperativosRedes,Programación

FormadorFreelance(3años):Java,AndroidJavaScript,jQueryJSF,Spring,HibernateGroovy&Grails

Page 4: Responsive Web Design (Diseño Web Adaptable)

1.2ALGUNOSPROYECTOSFundadory/ocreador:HackathonLovers:TweetsSentiment:MarkdownSlides:

Co-fundadory/oco-creador:PeliTweets:PasswordManagerGenerator:

http://hackathonlovers.comhttp://tweetssentiment.com

https://github.com/asanzdiego/markdownslides

http://pelitweets.com

http://pasmangen.github.io

Page 5: Responsive Web Design (Diseño Web Adaptable)

1.3¿DONDEENCONTRARME?Minick:asanzdiegoAboutMe:GitHub:Twitter:Blog:LinkedIn:Google+:

http://about.me/asanzdiegohttp://github.com/asanzdiegohttp://twitter.com/asanzdiego

http://asanzdiego.blogspot.com.eshttp://www.linkedin.com/in/asanzdiego

http://plus.google.com/+AdolfoSanzDeDiego

Page 6: Responsive Web Design (Diseño Web Adaptable)

2INTRODUCCIÓN

Page 7: Responsive Web Design (Diseño Web Adaptable)

2.1ESTONOESLAWEB

Estonoeslaweb.Fuente:bradfostweb.com

Page 8: Responsive Web Design (Diseño Web Adaptable)

2.2ESTOESLAWEB

Estoeslaweb.Fuente:bradfostweb.com

Page 9: Responsive Web Design (Diseño Web Adaptable)

2.3¿SERÁESTOLAWEB?

¿Seráestolaweb?.Fuente:bradfostweb.com

Page 10: Responsive Web Design (Diseño Web Adaptable)

2.4ESTADÍSTICAS

Estadísticas.Fuente:gs.statcounter.com

Page 11: Responsive Web Design (Diseño Web Adaptable)

2.5ELDESARROLLADOR

Page 12: Responsive Web Design (Diseño Web Adaptable)

2.6RESPONSIVEWEBDESIGN

ResponsiveWebDesign.Fuente:

Page 13: Responsive Web Design (Diseño Web Adaptable)

2.7CONTENTISLIKEWATER

Page 14: Responsive Web Design (Diseño Web Adaptable)

2.8GRACEFULDEGRADATIONSedesarrollaparalosúltimosnavegadores,conlaposibilidaddequefuncioneennavegadoresantiguos.

Gracefuldegradation.Fuente:bradfostweb.com

Page 15: Responsive Web Design (Diseño Web Adaptable)

2.9PROGESSIVEENHANCEMENTSedesarrollaunaversiónbásicacompletamenteoperativa,conlaposibilidaddeirañadiendomejorasparalosúltimosnavegadores.

Progressiveenhancement.Fuente:bradfostweb.com

Page 16: Responsive Web Design (Diseño Web Adaptable)

2.10BENEFICIOS(I)Reduccióndecostos.Puesnohayquehacervariasversionesdeunamismapágina.Eficienciaenlaactualización.Elsitiosolosedebeactualizarunavezysevereflejadaentodaslasplataformas.Mejoralausabilidad.Elusuariovaatenerexperienciasdeusuarioparecidasindependientementedeldispositivoqueestéusandoencadamomento

Page 17: Responsive Web Design (Diseño Web Adaptable)

2.11BENEFICIOS(II)MejoraelSEO.SegúnlasGuidelinesdeGoogleeltenerunawebqueseveacorrectamenteenmóvilesesunfactorquetienenencuentaalahoradeelaborarlosrankings.Impactoenelvisitante.Estatecnologíaporsernuevageneraimpactoenlaspersonasquelaveanenacción,loquepermitiráasociaralamarcaconcreatividadeinnovación.

Page 18: Responsive Web Design (Diseño Web Adaptable)

3EJEMPLOS

Page 19: Responsive Web Design (Diseño Web Adaptable)

3.1MATTKERSLEYPáginadetesteodeMattKersleyhttp://mattkersley.com/responsive

Page 20: Responsive Web Design (Diseño Web Adaptable)

3.2DCONSTRUCT2011http://2011.dconstruct.org

EjemploRWD:dConstruct2011.Fuente:ecbloguer.com

Page 21: Responsive Web Design (Diseño Web Adaptable)

3.3BOSTONGLOBEhttp://www.bostonglobe.com

EjemploRWD:BostonGlobe.Fuente:ecbloguer.com

Page 22: Responsive Web Design (Diseño Web Adaptable)

3.4FOODSENSEhttp://foodsense.is

EjemploRWD:FoodSense.Fuente:ecbloguer.com

Page 23: Responsive Web Design (Diseño Web Adaptable)

3.5DERENKESKINhttp://www.deren.me

EjemploRWD:DerenKeskin.Fuente:ecbloguer.com

Page 24: Responsive Web Design (Diseño Web Adaptable)

4DISEÑOFLUIDO

Page 25: Responsive Web Design (Diseño Web Adaptable)

4.1DEPXAEMFormula:target÷context=resulttarget-font-sizequetenemosenpíxelescontext-font-sizebase(pordefecto16pxenlamayoríadelosnavegadores)result-resultadoqueobtenemosenem

EsrecomendableindicarelcálculorealizadojuntoalaregladeCSS.

Page 26: Responsive Web Design (Diseño Web Adaptable)

4.2ONLINEhttp://pxtoem.com

Page 27: Responsive Web Design (Diseño Web Adaptable)

4.3EJEMPLOEjemploparaponer13pxpordefectoyluego18pxparah1enem:body{font:13px;}

h1{font-size:1.3846em;/*18px/13px=1.3846em*/}

Page 28: Responsive Web Design (Diseño Web Adaptable)

4.4EMSEHEREDAImportante:lasmedidasemseheredan,esdecir,unelementodentrodeunelementotomarácomoreferenciaelsuperiorparacalcularcuántoesunem.Porejemplo,sitenemosunacajadondehemosdefinidounafuentecomo0.5emydentrodeesacajaotraconunafuente0.25em,estaúltimafuentetendrá1/4detamañorespectoala1/2detamañodelafuentegeneral.

Page 29: Responsive Web Design (Diseño Web Adaptable)

4.5DEPXA%

Cálculoporcentajes.Fuente:aloud.es

Page 30: Responsive Web Design (Diseño Web Adaptable)

5SISTEMADEREJILLA

Page 31: Responsive Web Design (Diseño Web Adaptable)

5.1EJEMPLO1columnaparaxs(<768px)2columnasparasm(≥768px)3columnasparamd(≥992px)4columnasparalg(≥1200px)

Page 32: Responsive Web Design (Diseño Web Adaptable)

5.2USODECLASESUsodeclasesenelHTMLcomoBootstraphttp://getbootstrap.com/css

Page 33: Responsive Web Design (Diseño Web Adaptable)

5.3EJEMPLOBOOTSTRAP<divclass="row"><divclass="col-xs-12col-sm-6col-md-4col-lg-3">1</div><divclass="col-xs-12col-sm-6col-md-4col-lg-3">2</div><divclass="col-xs-12col-sm-6col-md-4col-lg-3">3</div><divclass="col-xs-12col-sm-6col-md-4col-lg-3">4</div></div>

Page 34: Responsive Web Design (Diseño Web Adaptable)

5.4SEMÁNTICOTheSemanticGridSystem:Mediantelayouts,ysinnecesidaddeusarclasesenHTML.http://semantic.gs

Page 35: Responsive Web Design (Diseño Web Adaptable)

5.5EJEMPLOSEMANTIC.GS(HTML)<header>...</header><article>...</article><aside>...</aside>

Page 36: Responsive Web Design (Diseño Web Adaptable)

5.6EJEMPLOSEMANTIC.GS(CSS)@column-width:60;@gutter-width:20;@columns:12;

header{.column(12);}article{.column(9);}aside{.column(3);}

@media(max-device-width:960px){article{.column(12);}aside{.column(12);}}

Page 37: Responsive Web Design (Diseño Web Adaptable)

6IMÁGENESFLUIDAS

Page 38: Responsive Web Design (Diseño Web Adaptable)

6.1TAMAÑOMÁXIMOFijaruntamañomáximo(silaimagennollega,sequedaconsutamaño):img{max-width:400px;}

Page 39: Responsive Web Design (Diseño Web Adaptable)

6.2ANCHODELCONTENEDOR(I)Ocuparelanchodelcontenedor(silaimagennollega,sedeforma):img{width:100%;}

Page 40: Responsive Web Design (Diseño Web Adaptable)

6.3ANCHODELCONTENEDOR(II)Ocuparelanchodelcontenedor(silaimagennollega,sequedaconsutamaño):img{max-width:100%;}

Page 41: Responsive Web Design (Diseño Web Adaptable)

6.4ANCHODELCONTENEDOR(III)Ocuparelanchodelcontenedorhastaunmáximo(silaimagennollega,sedeforma):img{width:100%;max-width:400px;}

Page 42: Responsive Web Design (Diseño Web Adaptable)

6.5BACKGROUNDSParalosbackgroundusarcover

.background-fluid{width:100%;background-image:url(img/water.jpg);background-size:cover;}

Page 43: Responsive Web Design (Diseño Web Adaptable)

7VIEWPORT

Page 44: Responsive Web Design (Diseño Web Adaptable)

7.1ORÍGENESLaetiquetametaparaelviewportfueintroducidaporAppleenSafariparamóvilesenelaño2007,paraayudaralosdesarrolladoresamejorarlapresentacióndesusaplicacioneswebenuniPhone.Hoyendíahasidoampliamenteadoptadaporelrestodenavegadoresmóviles,convirtiéndoseenunestándardefacto.

Page 45: Responsive Web Design (Diseño Web Adaptable)

7.2¿QUÉNOSPERMITE?Laetiquetaviewportnospermitedefinirelancho,altoyescaladeláreausadaporelnavegadorparamostrarcontenido.

Page 46: Responsive Web Design (Diseño Web Adaptable)

7.3TAMAÑOAlfijarelancho(width)oalto(height)delviewport,podemosusarunnúmerofijodepixeles(ej:320px,480px,etc)ousardosconstantes,device-widthydevice-heightrespectivamente.Seconsideraunabuenaprácticaconfigurarelviewportcondevice-widthydevice-height,enlugardeutilizarunanchooaltofijo.

Page 47: Responsive Web Design (Diseño Web Adaptable)

7.4ESCALALapropiedadinitial-scalecontrolaelniveldezoominicialalcargarselapágina.Laspropiedadesmaximum-scale,minimum-scalecontrolanelnivelmáximoymínimodezoomqueselevaapermitirusaralusuario.Lapropiedaduser-scalable[yes|no]controlansielusuariopuedeonohacerzoomsobrelapágina.

Page 48: Responsive Web Design (Diseño Web Adaptable)

7.5ACCESIBILIDADEsunabuenaprácticadeaccesibilidadnobloquearlasopcionesdezoomalusuario.

Page 49: Responsive Web Design (Diseño Web Adaptable)

7.6EJEMPLOUnejemploadaptableyaccesiblesería:

<metaname="viewport"content="width=device-width,initial-scale=1,user-scalable=yes">

Page 50: Responsive Web Design (Diseño Web Adaptable)

8MEDIAQUERIES

Page 51: Responsive Web Design (Diseño Web Adaptable)

8.1¿QUÉSON?UnMediaQuerynosólonospermiteseleccionareltipodemedio(all,braille,print,proyection,

screen,tty,tv,etc.),sinoademásconsultarotrascaracterísticassobreeldispositivoqueesta

mostrandolapágina.

Page 52: Responsive Web Design (Diseño Web Adaptable)

8.2EJEMPLOEjemplo:aplicardistintasreglasCSScuandoeláreadevisualizaciónseamayorque480px.

Page 53: Responsive Web Design (Diseño Web Adaptable)

8.3DISTINTOSCSSSolución1:cargardistintasCSS:

<linkrel="stylesheet"type="text/css"media="alland(min-width:480px)"href="tablet.css"/>

<!--tablet.cssesunCSSconreglasparacuandoeláreadevisualizaciónseamayorque480px-->

Page 54: Responsive Web Design (Diseño Web Adaptable)

8.4MISMOCSSSolución2:definirdistintaspropiedadesdentrodelmismoCSS:@mediaalland(min-width:480px){

/*aquíponerlasreglasCSSparacuandoeláreadevisualizaciónseamayorque480px*/}

Page 55: Responsive Web Design (Diseño Web Adaptable)

8.5IMPORTARCSSSolución3:importardistintashojasdeestilodentrodelmismoCSS:@importurl("tablet.css")alland(min-width:480px);

/*tablet.cssesunCSSconreglasparacuandoeláreadevisualizaciónseamayorque480px*/}

Page 56: Responsive Web Design (Diseño Web Adaptable)

8.6OPERADORANDEsusadoparacombinarmúltiplesmediafeaturesenunsóloMediaQuery,requiriendoquecadafuncióndevuelvetrueparaqueelQuerytambiénlosea.

Page 57: Responsive Web Design (Diseño Web Adaptable)

8.7EJEMPLOAND@mediatvand(min-width:700px)and(orientation:landscape){

/*reglasquequeremosqueseapliquenparatelevisionesconáreasdevisualizaciónmayoresde700pxsiemprequelapantallaestéenmodolandscape*/}

Page 58: Responsive Web Design (Diseño Web Adaptable)

8.8OPERADOR'OR'SepuedencombinarmúltiplesMediaQueriesseparadosporcomasenunalista,detalformaquesialgunadelasMediaQueriesdevuelvetrue,todolasentenciadevolverátrue.Estoesequivalenteaunoperadoror.CadaMediaQueryseparadoporcomasenlalistasetrataindividualmente.

Page 59: Responsive Web Design (Diseño Web Adaptable)

8.9EJEMPLO'OR'@mediatv,(min-width:700px),(orientation:landscape){

/*reglasquequeremosqueseapliquenparatelevisiones,oparadispositivosconáreasdevisualizaciónmayoresde700px,ocuandolapantallaestáenmodolandscape*/}

Page 60: Responsive Web Design (Diseño Web Adaptable)

8.10OPERADORNOTSeutilizaparanegarunMediaQuerycompleto.Nosepuedenegarunacaracterísticaindividualmente,sinosolamenteelMediaQuerycompleto.

Page 61: Responsive Web Design (Diseño Web Adaptable)

8.11EJEMPLONOT(I)@medianottvandmax-width(800px),notscreenandmax-width(400px){

/*reglasquequeremosqueseapliquenparadispositivosquenoseannitelevisionesconáreasdevisualizaciónmenoresde800px,nipantallasconáreasdevisualizaciónmenoresde400px*/}

Page 62: Responsive Web Design (Diseño Web Adaptable)

8.12EJEMPLONOT(II)Elanteriorejemploseríaequivalentea:

@medianot(tvandmax-width(800px)),not(screenandmax-width(400px)){

...}

Page 63: Responsive Web Design (Diseño Web Adaptable)

8.13CARACTERÍSTICAS(I)Característicasquehacenreferenciaaláreadevisualización:widthheightaspect-ratio[4/3|16/9|...]orientation[portrait|landscape]

Page 64: Responsive Web Design (Diseño Web Adaptable)

8.14CARACTERÍSTICAS(II)Característicasquehacenreferenciaalapantalladeldispositivo:device-widthdevice-heightdevice-aspect-ratio[4/3|16/9|...]

Page 65: Responsive Web Design (Diseño Web Adaptable)

8.15CARACTERÍSTICAS(III)Otrascaracterísticas:color:Elnúmerodebitsdeprofundidaddecolormonocrome:Elnúmerodebitsdeprofundidaddecolor,endispotivosmonocromáticosresolution:Densidaddepixelseneldispositivo,medidoendpi

Page 66: Responsive Web Design (Diseño Web Adaptable)

8.16MIN-YMAX-Acasitodaslascaracterísticasselespuedeadjuntarlosprefijosmin-ymax-Dehecholohabitualesusardichosprefijos.

Page 67: Responsive Web Design (Diseño Web Adaptable)

9METODOLOGÍAS

Page 68: Responsive Web Design (Diseño Web Adaptable)

9.1DESKTOPVSMOBILE

DesktopfirstVSMobilefirst.Fuente:brettjankord.com

Page 69: Responsive Web Design (Diseño Web Adaptable)

9.2DESKTOPFIRSTConsisteendesarrollarparapantallasgrandesyposteriormenteadaptareldiseñoapantallaspequeñas.

Page 70: Responsive Web Design (Diseño Web Adaptable)

9.3DF:UTILIZAMAX-WIDTHNormalmentelosMediaQueriesutilizanmax-width,simplificandoyajustandoparalaspantallasmáspequeñas.@mediaalland(max-width:320px){/*Estilosparaanchosmenoresa320px*/}@mediaalland(max-width:768px){/*Estilosparaanchosmenoresa768px*/}

Page 71: Responsive Web Design (Diseño Web Adaptable)

9.4DF:PROBLEMASLosMediaQuerynoestánsoportadosportodoslosmóviles.Laversiónmóvilterminasiendounaversióndescafeinadadelaweboriginal.

Page 72: Responsive Web Design (Diseño Web Adaptable)

9.5MOBILEFIRSTConsisteendesarrollarparapantallaspequeñasyposteriormenteadaptareldiseñoapantallasgrandes.

Page 73: Responsive Web Design (Diseño Web Adaptable)

9.6MF:UTILIZAMIN-WIDTHAhoralosMediaQueriesutilizanmin-width,paraajustareldiseñoamedidaqueaumentaeltamañodepantalla.@mediaalland(min-width:320px){/*Estilosparaanchossuperioresa320px*/}@mediaalland(min-width:768px){/*Estilosparaanchossuperioresa768px*/}

Page 74: Responsive Web Design (Diseño Web Adaptable)

9.7MF:VENTAJASFuncionaenmóvilesy/onavegadoresantiguosquenosoportanlosMediaQueries.Normalmentelahojadeestilosresultantesuelesermássencillaqueusandolaotravía.Empezarporelmóvilnosserviráparadeterminardeunamaneramásclaracualeselcontenidorealmenteimportantedenuestraweb.

Page 75: Responsive Web Design (Diseño Web Adaptable)

9.8PUNTOSDEROTURA(I)Normalmente:320pxparaelmóvil,768pxparaeltablet,1024pxparaelportatil,1200pxparaelsobremesa.

Page 76: Responsive Web Design (Diseño Web Adaptable)

9.9PUNTOSDEROTURA(II)LomejorseríaquelospuntosderoturaqueaplicamosenlosMediaQuery,fueranenfuncióndenuestrocontenido,envezdeenfuncióndeltamañodeldispositivomásvendido.Lamaneradehacerlo:ircambiandopocoapocoelanchodelnavegadorydondelawebserompa,aplicarunMediaQuery.

Page 77: Responsive Web Design (Diseño Web Adaptable)

10ACERCADE

Page 78: Responsive Web Design (Diseño Web Adaptable)

10.1LICENCIAEstastransparenciasestánhechascon:MarkdownSlides:

EstastransparenciasestánbajounalicenciaCreativeCommonsReconocimiento-CompartirIgual3.0:

https://github.com/asanzdiego/markdownslides

http://creativecommons.org/licenses/by-sa/3.0/es

Page 79: Responsive Web Design (Diseño Web Adaptable)

10.2FUENTESTransparencias:

Código:

https://github.com/asanzdiego/curso-interfaces-web-2014/tree/master/03-rwd/slides

https://github.com/asanzdiego/curso-interfaces-web-2014/tree/master/03-rwd/src

Page 80: Responsive Web Design (Diseño Web Adaptable)

10.3BIBLIOGRAFÍA(I)ResponsiveWebDesign

IntroducciónalDiseñoWebAdaptableoResponsiveWebDesign

Tutorial:ResponsiveWebDesign

http://www.arkaitzgarro.com/responsive-web-design/index.html

http://www.emenia.es/diseno-web-adaptable-o-responsive-web-design

http://www.mmfilesi.com/blog/tutorial-responsive-web-design-i

Page 81: Responsive Web Design (Diseño Web Adaptable)

10.4BIBLIOGRAFÍA(II)Tutorial:TransformatuwebenResponsiveDesign

Cursoresponsivewebdesign-RedradixSchool

TodoloquenecesitasabersobreResponsiveWebDesign

http://blog.ikhuerta.com/transforma-tu-web-en-responsive-design

http://www.slideshare.net/Redradix/curso-responsive-web-design-redradix-school

http://www.ecbloguer.com/marketingdigital/?p=2635

Page 82: Responsive Web Design (Diseño Web Adaptable)

10.5BIBLIOGRAFÍA(III)DiseñowebfluidoyplantillafluidaconHTML5yCSS3

BeneficiosdelResponsiveWebDesignenSEO

ResponsiveWebDesignTestingTool

http://www.aloud.es/diseno-web-fluido-y-plantilla-fluida

http://madridnyc.com/blog/2013/01/29/beneficios-del-responsive-web-design-en-seo

http://mattkersley.com/responsive

Page 83: Responsive Web Design (Diseño Web Adaptable)

10.6BIBLIOGRAFÍA(IV)ResponsiveWebDesign

ResponsiveDesignyaccesibilidad.Buenasymalasprácticas.Errorescomunes.

Diseñowebadaptativo:mejoresprácticas

http://www.ricardocastillo.com/rwd.pdf

http://olgacarreras.blogspot.com.es/2014/01/responsive-design-y-accesibilidad.html

http://www.emenia.es/diseno-web-adaptativo-mejores-practicas

Page 84: Responsive Web Design (Diseño Web Adaptable)

10.7BIBLIOGRAFÍA(V)Traducciónde"ResponsiveWebDesign"de"AListApart"

ResponsiveDesignExercisehttp://diseñowebresponsivo.com.ar

http://blog.garciaechegaray.com/2013/11/29/responsive-design-exercise.html

Page 85: Responsive Web Design (Diseño Web Adaptable)

10.8BIBLIOGRAFÍA(VI)EstadísticasdeStatCounter

PáginadetesteodeMattKersleyhttp://gs.statcounter.com

http://mattkersley.com/responsive