Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Taller de introducción HTML5+CSS3 (2)

Taller de introducción HTML5+CSS3 (2)

Segunda parte del taller de introducción a HTML5 y CSS3 impartido en la Facultad de Ciencias de la Computación de la BUAP

Avatar for Comunidad PHP Puebla

Comunidad PHP Puebla

July 05, 2013

More Decks by Comunidad PHP Puebla

Other Decks in Programming

Transcript

  1. Julio 2013 Comunidad PHP Puebla 2 Comunidad PHP Puebla •

    Cuentas de Comunidad PHP Puebla • http://twitter.com/ComPHPPuebla • http://facebook.com/ComPeHPPuebla • http://github.com/ComPHPPuebla • https://packagist.org/users/ComPHPPuebla • https://speakerdeck.com/comphppuebla • Sitio Web • http://www.comunidadphppuebla.com
  2. Julio 2013 Comunidad PHP Puebla 3 Imágenes • <img> Sirve

    para incluir imágenes en un documento HTML. • Requiere del atributo src cuyo valore será la URL de la imagen • El atributo alt también es obligatorio y sirve para agregar un equivalente en texto para la imagen <img src="/imageness/logo.jpg" alt="Logo de la Comunidad PHP Puebla">
  3. Julio 2013 Comunidad PHP Puebla 4 Enlaces • <a> el

    tag “anchor” (ancla) se usa para rodear texto o una imagen que se usará para provocar que el navegador se dirija a otra página. • El texto que se encuentra entre las etiquetas es lo que se muestra al usuario, usualmente como texto subrayado en color azul. • Cuando el usuario hace clic en el texto el navegador abre el documento especificado en el atributo href
  4. Julio 2013 Comunidad PHP Puebla 5 Enlaces • Ejemplos <a

    href="http://www.google.com"> Buscar </a> <a href="ftp://ftp.microsoft.com"> Microsoft FTP </a> <a href="mailto:[email protected]? subject=Feedback">Feedback</a> <a href="mailto:[email protected]"><img src="email_btn.gif" alt="Email Webmaster" /></a> <a href="http://www.mywebsite/definitions.html#filet"> Definiciones </a>
  5. Julio 2013 Comunidad PHP Puebla 6 Tablas • Una tabla

    consiste de 3 elementos básicos <table>, <tr> y <td> • <tr> indica el inicio/fin de una fila • <td> delimita cada celda en la tabla, sus dos atributos más comunes son: • colspan. Especifica el número de columnas que la celda debe ocupar. • rowspan. Especifica el número de filas que la celda debe ocupar
  6. Julio 2013 Comunidad PHP Puebla 7 Tablas • <caption> Agrega

    un título a una tabla • <th> Agrega una celda de encabezado • <tbody> Define donde inicia y termina el cuerpo de una tabla • <tfoot> Define donde inicia y termina el footer de una tabla
  7. Julio 2013 Comunidad PHP Puebla 8 Forms • Un formulario

    permite a un usuario ingresar datos. • La información que se ingresa se manda a un servidor en un grupo de datos que consisten del nombre de los elementos y sus valores • El procesamiento de los datos es tarea de un form handler, el cual es un script diseñado para manejar e interpretar los datos enviados.
  8. Julio 2013 Comunidad PHP Puebla 9 Partes de un formulario

    • <form> Es el lemento a través del cual el usuario puede ingresar información – Requiere de los atributos action y method, los cuales son la URL del form handler y el método HTTP por el cual se envían los datos, respectivamente. – El valor por default de action es la URL del documento actual y el valor por default de action es get (el otro valor válido es post) <form method=”get”></form>
  9. Julio 2013 Comunidad PHP Puebla 10 Partes de un formulario

    • <input> Muchos de los elementos de un formulario se crean con este elemento. • Sus 3 atributos más comunes son name, type y value – name: identifica el control para que el valor enviado pueda ser procesado al enviar los datos – type: Específica el tipo de control (por default text) – value: Especifica el valor inicial de un elemento
  10. Julio 2013 Comunidad PHP Puebla 11 Partes de un formulario

    • Tipos de input – text – password – checkbox – radio – file – submit – button – hidden
  11. Julio 2013 Comunidad PHP Puebla 12 Partes de un formulario

    • <select> Crea un control de selección con un menú de opciones a elegir. • El elemento select es un contenedor de elementos option u optgroup • Si se agrega el atributo multiple, se podrá elegir más de un valor
  12. Julio 2013 Comunidad PHP Puebla 13 Partes de un formulario

    • <textarea> crea un control de texto multilinea, cuyo objetivo es poder capturar textos muy largos • Su tamaño es definido por los atributos cols y rows
  13. Julio 2013 Comunidad PHP Puebla 14 Partes de un formulario

    • <fieldset> sirve para agrupar varios controles relacionados • <legend> proporciona un título para un elemento fieldset • <label> crea una etiqueta o nombre para un elemento en específico
  14. Julio 2013 Comunidad PHP Puebla 16 HTML5 • HTML5 no

    es una reformulación de versiones previas de HTML (incluye elementos de HTML4 y HTML 1) y está diseñado con el objetivo de funcionar en cualquier plataforma, con navegadores antiguos y que sea capaz de manejar errores de forma elegante • HTML5 incluye la redefinición de elementos HTML, la inclusión de nuevos elementos e incluye el uso de nuevas tecnologías como video, audio y canvas.
  15. Julio 2013 Comunidad PHP Puebla 17 Nuevos elementos semánticos •

    <section> Su objetivo es agrupar contenido de forma temática. Ejemplos de section son los capítulos de un libro o las partes de una tesis • <nav> Se usa para delimitar una sección con elementos de navegación (enlaces a otros documentos). Los elementos de navegación deben ser relevantes
  16. Julio 2013 Comunidad PHP Puebla 18 Nuevos elementos semánticos •

    <article> Representa un elemento autocontenido que puede ser usado o distribuido de forma independiente, por ejemplo el post de un blog, o un artículo en una revista • <aside> Es un elemento con información relacionada con el contenido principal. Por ejemplo bloques de anuncios o de navegación
  17. Julio 2013 Comunidad PHP Puebla 19 Nuevos elementos semánticos •

    <hgroup> este elemento se utiliza para agrupar encabezados h1..h6 cuando un titulo tiene subtitulos por ejemplo • <header> este elemento usualmente contiene el título de una sección, puede usarse para delimitar un índice de contenido, logos, o un formulario de búsqueda por ejemplo
  18. Julio 2013 Comunidad PHP Puebla 20 Nuevos elementos semánticos •

    <footer> es usado para incluir un pie de página para la seccion a la cual pertenece o al documento HTML. No es obligatorio al final de cada sección. Ejemplos son: apéndices, información de copyright, etc. • <time> representa una hora o fecha • <mark> representa un bloque de contenido que debe resaltarse
  19. Julio 2013 Comunidad PHP Puebla 21 ¿Cómo manejan los navegadores

    los elementos desconocidos? • Cada navegador tiene una lista de los elementos que soporta, los elementos fuera de esa lista se tratan como desconocidos. – ¿Qué apariencia tienen estos elementos? – ¿Puede contener otros elementos (cuáles)? • Los navegadores responden a esas preguntas de forma diferente
  20. Julio 2013 Comunidad PHP Puebla 22 ¿Cómo manejan los navegadores

    los elementos desconocidos? • Navegadores anteriores a IE9 no permiten dar estilo a elementos desconocidos • Si IE no reconoce un elemento lo insertará como un elemento vacío sin hijos. Todos los elementos que se esperaban dentro del elemento se encontraran al mismo nivel del elemento vacío • HTML5shiv (ó shim) <!--[if lt IE 9]> <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></ script> <![endif]--> •
  21. Julio 2013 Comunidad PHP Puebla 23 header <div id="header"> <h1>PHP

    Puebla</h1> <p class="tagline"> Comunidad de desarrolladores PHP en Puebla </p> </div> <header> <h1>PHP Puebla</h1> <p class="tagline"> Comunidad de desarrolladores PHP en Puebla </p> </header>
  22. Julio 2013 Comunidad PHP Puebla 24 hgroup <header> <h1>PHP Puebla</h1>

    <p class="tagline"> Comunidad de desarrolladores PHP en Puebla </p> </header> <header> <hgroup> <h1>PHP Puebla</h1> <h2> Comunidad de desarrolladores PHP en Puebla </h2> </hrgoup> </header>
  23. Julio 2013 Comunidad PHP Puebla 25 article <div class="entry"> <p

    class="post- date">Octubre 22, 2009</p> <h2> <a href="#" rel="bookmark" title="Liga a este post"> Taller HTML5 </a> </h2> </div> <article> <p class="post- date">Octubre 22, 2009</p> <h2> <a href="#" rel="bookmark" title="Liga a este post"> Taller HTML5 </a> </h2> </article>
  24. Julio 2013 Comunidad PHP Puebla 26 article <article> <p class="post-

    date">Octubre 22, 2009</p> <h2> <a href="#" rel="bookmark" title="Liga a este post"> Taller HTML5 </a> </h2> </article> <article> <header> <p class="post-date">Octubre 22, 2009</p> <h1> <a href="#" rel="bookmark" title="Liga a este post"> Taller HTML5 </a> </h1> </header> </article>
  25. Julio 2013 Comunidad PHP Puebla 27 time <article> <header> <p

    class="post-date">Octubre 22, 2009</p> <h1> <a href="#" rel="bookmark" title="Liga a este post"> Taller HTML5 </a> </h1> </header> </article> <article> <header> <time datetime="2009-10-22" pubdate>October 22, 2009</time> <h1> <a href="#" rel="bookmark" title="Liga a este post"> Taller HTML5 </a> </h1> </header> </article>
  26. Julio 2013 Comunidad PHP Puebla 28 nav <div id="nav"> <ul>

    <li><a href="#">Inicio</a></li> <li><a href="#">Blog</a></li> <li><a href="#">Galería</a></li> <li><a href="#">Contacto</a></li> </ul> </div> <nav> <ul> <li><a href="#">Inicio</a></li> <li><a href="#">Blog</a></li> <li><a href="#">Galería</a></li> <li><a href="#">Contacto</a></li> </ul> </nav>
  27. Julio 2013 Comunidad PHP Puebla 29 footer <div id="footer"> <p>&#167;</p>

    <p>&#169; 2001&#8211;9 <a href="#">Scott Pilgrim</a></p> </div> <footer> <p>&#167;</p> <p>&#169; 2001&#8211;9 <a href="#">Scott Pilgrim</a></p> </footer>
  28. Julio 2013 Comunidad PHP Puebla 30 Video y audio •

    HTML5 define una forma estándar de incluir video con el elemento <video> • http://caniuse.com/ Es un excelente recurso para saber que elementos HTML5 son soportadas por qué navegadores y en que versiones
  29. Julio 2013 Comunidad PHP Puebla 31 Video containers • Cuando

    se habla de video se piensa en formato .avi y .mp4, en ambos casos se trata de formatos contenedores, similar a un archivo .zip. • Los formatos contenedores solo indican cómo guardar la información, no en que formato. • Ejemplos: – mp4 – ogg – flash
  30. Julio 2013 Comunidad PHP Puebla 32 Codecs de video •

    Cuando hablamos de ver videos, nos referimos a una combinación de streams, uno de video y uno de audio. • Cuando ves un video el reproductor de video hace 3 tareas 1.Interpreta el formato contenedor 2.Decodifica el stream de video y lo muestra en tu pantalla 3.Decodifica el stream de audio y lo manda a tus bocinas
  31. Julio 2013 Comunidad PHP Puebla 33 Codecs de video •

    Un codec de video es un algoritmo por el cual se codifica el stream de video • Codec es una combinación de las palabras encoder y decoder • Tres codecs de video más importantes – H.264, también conocido como MPEG-4 Advanced Video Coding. – Theora – VP8
  32. Julio 2013 Comunidad PHP Puebla 34 Codecs de audio •

    Como en el caso de los videos, los codecs de audio son algoritmos para codificar/decodificar streams de audio • Tres codecs de audio más importantes – Mp3 – AAC, Advanced Audio Coding – Vorbis
  33. Julio 2013 Comunidad PHP Puebla 35 video • El elemento

    <video> tiene como atributo requerido src que representa la URL hacia el archivo de video que quieres reproducir. Opcionalmente puedes definir el ancho y alto máximos del contenedor de video <video src="pr6.webm" width="320" height="240"></video> <video src="pr6.webm" width="320" height="240" controls></video> <video src="pr6.webm" width="320" height="240" preload></video> <video src="pr6.webm" width="320" height="240" autoplay></video>
  34. Julio 2013 Comunidad PHP Puebla 36 video <video width="320" height="240"

    controls> <source src="pr6.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"'> <source src="pr6.webm" type='video/webm; codecs="vp8, vorbis"'> <source src="pr6.ogv" type='video/ogg; codecs="theora, vorbis"'> </video>
  35. Julio 2013 Comunidad PHP Puebla 37 video <video id="movie" width="320"

    height="240" preload controls> <source src="pr6.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"' /> <source src="pr6.webm" type='video/webm; codecs="vp8, vorbis"' /> <source src="pr6.ogv" type='video/ogg; codecs="theora, vorbis"' /> <object width="320" height="240" type="application/x-shockwave-flash" data="flowplayer-3.2.1.swf"> <param name="movie" value="flowplayer-3.2.1.swf" /> <param name="allowfullscreen" value="true" /> <param name="flashvars" value='config={ "clip": {"url": "http://wearehugh.com/dih5/good/bbb_480p.mp4", "autoPlay":false, "autoBuffering":true}}' /> <p>Download video as <a href="pr6.mp4">MP4</a>, <a href="pr6.webm">WebM</a>, or <a href="pr6.ogv">Ogg</a>.</p> </object> </video>
  36. Julio 2013 Comunidad PHP Puebla 38 audio <audio src="pr6.mp3" width="320"

    height="240"></audio> <audio src="pr6.mp3" width="320" height="240" controls></audio> <audio src="pr6.mp3" width="320" height="240" preload></audio> <audio src="pr6.mp3" width="320" height="240" autoplay></audio>
  37. Julio 2013 Comunidad PHP Puebla 39 Formularios • El atributo

    placeholder coloca texto dentro de un control input mientras el elemento esté vacío y no tenga el foco <form> <input name="q" placeholder="Búsqueda por tema"> <input type="submit" value="Buscar"> </form>
  38. Julio 2013 Comunidad PHP Puebla 40 Formularios • El atributo

    required indica al navegador que solo se puede enviar la información si el control se llenó apropiadamente <input type="text" required aria-required="true"> • También debe incluirse el atributo a fin de dar soporte a los screen-readers
  39. Julio 2013 Comunidad PHP Puebla 41 Formularios • El atributo

    pattern permite indicar, a través de una expresión regular, que formato deben tener los datos ingresados en un control. • Por ejemplo, podemos indicar que un password debe tener una longitud de 6 caracteres (que no sean espacios en blanco) <input type="password" name="password" required pattern="\S{6,}">
  40. Julio 2013 Comunidad PHP Puebla 42 Formularios • Auto foco.

    Muchos sitios usan Javascript para colocar el cursor en el primer elemento de un formulario. • HTML introduce el atributo autofocus que coloca el cursor en el elemento que tenga este atributo de forma automática <form> <input name="q" autofocus> <input type="submit" value="Search"> </form>
  41. Julio 2013 Comunidad PHP Puebla 43 Direcciones de correo electrónico

    • HTML5 define el nuevo tipo de control email para capturar direcciones de correo electrónico <form> <input type="email"> <input type="submit" value="Enviar"> </form>
  42. Julio 2013 Comunidad PHP Puebla 44 URLs • HTML también

    introduce el control de tipo url, cuyo objetivo es capturar precisamente URLs <form> <input type="url"> <input type="submit" value="Enviar"> </form>
  43. Julio 2013 Comunidad PHP Puebla 45 Spinners • HTML introduce

    el control de tipo number que permite capturar números y definir el rango de valores que se pueden capturar. <input type="number" min="0" max="10" step="2" value="6">
  44. Julio 2013 Comunidad PHP Puebla 46 Sliders • El nuevo

    tipo range permite capturar valores númericos a través de un slider <input type="range" min="0" max="10" step="2" value="6">
  45. Julio 2013 Comunidad PHP Puebla 47 Date pickers • HTML5

    incluye controles para capturar fechas – type=”date” – type=”month” – type=”week” – type=”time” – type=”datetime” – type=”datetime-local”
  46. Julio 2013 Comunidad PHP Puebla 48 Color pickers 1)HTML5 incluye

    un nuevo control para seleccionar colores <input type=”color”>
  47. Julio 2013 Comunidad PHP Puebla 49 Ligas de interés •

    HTML5 Rocks – http://slides.html5rocks.com/#landing-slide • Especificación HTML5 – http://www.w3.org/html/wg/drafts/html/master/ • Ejemplos de código – https://github.com/ComPHPPuebla/html5css3