Translate

lunes, 12 de noviembre de 2012

MANUAL DE HTML5 (1ra PARTE)


El HTML5 (HyperText Markup Language, versión 5) es la quinta revisión del lenguaje de programación “básico” de la World Wide Web, el HTML. Esta nueva versión pretende remplazar al actual (X)HTML, corrigiendo problemas con los que los desarrolladores web se encuentran, así como rediseñar el código actualizandolo a nuevas necesidades que demanda la web de hoy en día.

Debido a que estos cambios afectaran la forma de desarrollar la web en un futuro inmediato, desde The Process, plantearemos una serie de artículos donde desvelaremos los cambios más importantes.

Actualmente el HTML5 está en un estado BETA, aunque ya algunas empresas están desarrollando sus sitios webs en esta versión del lenguaje. A diferencia de otras versiones de HTML, los cambios en HTML5 comienzan añadiendo semántica y accesibilidad implícitas, especificando cada detalle y borrando cualquier ambigüedad. Se tiene en cuenta el dinamismo de muchos sitios webs (facebook, twenti, etc), donde su aspecto y funcionalidad son más semejantes a aplicaciones webs que a documentos.

MEJOR ESTRUCTURA.

Actualmente es abusivo el uso de elementos DIV para estructurar una web en bloques. El HTML5 nos brinda varios elementos que perfeccionan esta estructuración estableciendo qué es cada sección, eliminando así DIV innecesarios. Este cambio en la semántica hace que la estructura de la web sea más coherente y fácil de entender por otras personas y los navegadores podrán darle más importancia a según qué secciones de la web facilitándole además la tarea a los buscadores, así como cualquier otra aplicación que interprete sitios web. Las webs se dividirán en los siguientes elementos:

  • <section></section> -  Se utiliza para representar una sección “general” dentro de un documento o aplicación, como un capítulo de un libro. Puede contener subsecciones y si lo acompañamos de h1-h6 podemos estructurar mejor toda la página creando jerarquías del contenido, algo mu favorable para el  buen posicionamiento web.
  • <article></article> - El elemento de artículo representa un componente de una página que consiste en una composición autónoma en un documento, página, aplicación, o sitio web con la intención de que pueda ser reutilizado y repetido. Podría utilizarse en los artículos de los foros, una revista o el artículo de periódico, una entrada de un blog, un comentario escrito por un usuario, un widget interactivo o gadget, o cualquier otro artículo independiente de contenido.
  • Cuando los elementos de <article> son anidados, los elementos de <article> interiores representan los artículos que en principio son relacionados con el contenido del artículo externo. Por ejemplo, un artículo de un blog que permite comentarios de usuario, dichos comentarios se podrían representar con <article>.
  • <aside></aside> - Representa una sección de la página que abarca un contenido tangencialmente relacionado con el contenido que lo rodea, por lo que se le puede considerar un contenido independiente. Este elemento puede utilizarse para efectos tipográficos, barras laterales, elementos publicitarios, para grupos de elementos de la navegación, u otro contenido que se considere separado del contenido principal de la página.
  • <header></header> - Elemento <header> representa un grupo de artículos introductorios o de navegación.
  • <nav></nav> - El elemento <nav> representa una sección de una página que es un link a otras páginas o a partes dentro de la página: una sección con links de navegación. No todos los grupos de enlaces en una página tienen que estar en un elemento <nav>, sólo las secciones que consisten en bloques principales de la navegación son apropiadas para ser utilizadas co el elemento <nav>. Puede utilizarse particularmente en el pie de página para tener un menú con un listado de enlaces a varias páginas de un sitio, como el Copyright; home page, política de uso y privacidad. No obstante, el elemento <footer> es plenamente suficiente sin necesidad de tener un elemento <nav>.
  • <footer></footer> - El elemento <footer> representa el pié de una sección, con información acerca de la página/sección que poco tiene que ver con el contenido de la página, como el autor, el copyright o el año.

Diferencias entre HTML y HTML5


MEJORAS EN LOS FORMULARIOS
El elemento input adquiere gran relevancia al ampliarse los elementos que se permitiran en el “type”.

<input type="search"> para cajas de búsqueda.
<input type="number"> para adicionar o restar números mediante botones.
<input type="range"> para seleccionar un valor entre dos valores predeterminados.
<input type="color"> seleccionar un color.
<input type="tel"> números telefónicos.
<input type="url"> direcciones web.
<input type="email"> direcciones de email.
<input type="date"> para seleccionar un día en un calendario.
<input type="month"> para meses.
<input type="week"> para semanas.
<input type="time"> para fechas.
<input type="datetime"> para una fecha exacta, absoluta y tiempo.
<input type="datetime-local"> para fechas locales y frecuencia.

OTROS ELEMENTOS INTERESANTES
  • <audio> y <video> - Nuevos elementos que permitirán incrustar un contenido multimedia de sonido o de vídeo, respectivamente. Es una de las novedades más importantes e interesantes en este HTML5, ya que permite reproducir y controlas vídeos y audio sin necesidad de plugins como el de Flash. El comportamientos de estos elementos multimedia será como el de cualquier elemento nativo, y permitirá insertar en un video, enlaces o imagenes, por ejemplo. Youtube, ya ha anunciado que deja el Flash y comienza a proyectar con HTML5.
  • <embed> - Se emplea para contenido incrustado que necesita plugins como el Flash. Es un elemento que ya reconocen los navegadores, pero ahora al formar parte de un estándar, no habrá conflicto con <object>.
  • <canvas> - Este es un elemento complejo que permite que se generen gráficos al hacer dibujos en su interior. Es utilizado en Google Maps y en un futuro permitirá a los desarrolladores crear aplicaciones muy interessantes.
En próximos artículos profundizaremos más en el HTML5 y su desarrollo.

Ir a la parte 2 del Tutorial de HTML5 »»»»



lunes, 29 de octubre de 2012

HTML5 » Fechas en HTML5



Hay múltiples motivos por los que tenemos que añadir fechas a nuestras páginas web, desde el típico de indicar cuándo fue creada o modificada la página, para reseñar la fecha de publicación de un artículo, para poner la fecha de un comentario, reseñar un acontecimiento,...

Es por ello que, después de muchas discusiones, eliminar las fechas de la especificación HTML5 y volverlas a aceptar (en inglés), tenemos el elemento time para poder especificar fechas en HTML5.

El elemento time en HTML5 tiene la siguiente estructura.



Así una fecha en HTML5 se podría definir de la siguiente forma:



Ya que el atributo datetime no es estrictamente necesario, pero muy aconsejable si queremos tener un formato entendible por máquinas. Y es que el atributo datetime nos permite especificar la fecha en un formato ISO 8601.

Así, si insertamos la fecha con el atributo datetime tendríamos lo siguiente:


Pero la fecha no se tiene que restringir al formato año mes día. Por ejemplo, podemos temer fechas más cortas, en las que solo especifiquemos el año:


En las que especifiquemos la hora...


En las que especifiquemos la fecha y la hora (en este caso la fecha y hora se separa mediante una T o con un espacio en blanco):



En las que demos incluso la zona horaria GTM (o UTC para ser exactos). En este caso entre la hora y la franja horaria hay que añadir el desplazamiento positivo (con un más) o negativo (con un menos) que tenga esa zona:


Como hemos podido comprobar el manejo del elemento time y de su atributo datetime es realmente sencillo para poder fechas en HTML5.


lunes, 1 de octubre de 2012

25 MEJORES SITIOS PARA APRENDER HTML5

Junto a una muy útil y completa conferencia de CVander sobre las páginas más importantes para desarrollar en HTML5, los integerantes de Maestros del web han publicado una lista de los mejores 30 sitios para que podamos aprender técnicas, estructuras, código, funciones, frameworks y trucos útiles para crear páginas en HTML5, la innovación de la web.

Esta es la lista completa:
HTML5 cool logo
  1. W3C y el draft HTML5: muestra los avances oficiales de la W3C sobre la dirección que tiene HTML5.
  2. El grupo de Whatwg: Mientras que la W3C se movía hacia XHTML2, este grupo empieza a generar su propia propuesta sobre el verdadero futuro de la web y son ellos quienes le dieron vida a HTML5, un estándar vivo. Actualizan todo el tiempo.
  3. HTML5 Test: Un test en línea que evaluá cuan bueno y completo es el soporte de HTML5 en tu navegador.
  4. HTML5 Readiness: Documenta gráficamente el avance de los diferentes navegadores desde el 2008 y las características de HTML5.
  5. Guía HTML5 de mejorando.la: Freddy Vega y Cvander crearon este draft permanente de lo que están aprendiendo de HTML5, en español, en pdf.
  6. HTML5 Visual Cheat Sheet: Una tarjetita práctica para tener todos los elementos de HTML5 cerca para fácil consulta.
  7. HTML5 enabling script: Script para que Internet Explorer interprete HTML5.
  8. HTML5 Boilerplate: Con esta plantilla conocerás el poder de las nuevas etiquetas, código CSS3 y filosofía detrás de HTML5. Para móviles, recomendado ver el HTML5 Boilerplate mobile.
  9. Initializr: Este sitio te genera una plantilla personalizada con solo las características que vas a utilizar. Muy práctico para diseñadores.
  10. Bootstrap de Twitter Twitter comparte un entorno básico para empezar con tu proyecto web basado en su misma plataforma. HTML5, CSS3 (con LESS).
  11. Modernizr: Librería de JavaScript, pensando en compatibilidades e impulsando nuevas características a navegadores viejos.
  12. Paper.js: Una librería JavaScript para trabajar con Canvas en el navegador. Todo sobre el manejo vectorial en HTML5.
  13. Impact.js: Motores de Videojuegos con HTML5.
  14. Can I Use?: Informa sobre el soporte de HTML5, CSS3 y SVG en diferentes navegadores para escritorios y entornos móviles.
  15. Mobile HTML5: Completa tabla comparativa de los diferentes navegadores para móviles y tabletas.
  16. VideoSWS: Comparación de características de cada player para el tag video.
  17. Youtube y HTML5: El player de video de YouTube en HTML5.
  18. HTML5 Doctor: Un espacio colaborativo entre asistentes a un FOWD en Londres que están siempre inquietos por noticias y desarrollo de HTML5.
  19. Apple y HTML5: El compromiso, ejemplos de Apple y el uso de HTML5 en su ecosistema de desarrollo, sitios web y dispositivos.
  20. Web Open Wonder de Mozilla: Ejemplos de Mozilla con HTML5, diseño, vídeo y Webgl.
  21. Chrome Experiments: Galería con enlaces a increíbles ejemplos del equipo de Chrome y lo que han hecho con HTML5. Su eslogan es: Not your mother’s Javascript.
  22. Html5 Rocks: Propuesta lanzada por Google con guías, tutoriales, ejemplos y código libre disponible para modificarse y re-compartir.
  23. El Test Drive de IE por Microsoft: Muestra ejemplos del equipo de IE10 realizados con HTML5. Recomendadísimo el SVG Girl que es un anime japonés diseñado para el IE.
  24. The expressive web por Adobe: Un showcase de CSS3 (animaciones, gradientes, transformaciones, transiciones, letras), HTML5 (canvas, audio, formularios, videos) y almacenamiento. Adobe está transformando su suite de aplicaciones en miras de HTML5.
  25. Fluid Squares: (esta página es mi aporte a la lista original) Sitio que con un interesante grid sigue listando los sitios más recientes sobre el desarrollo del HTML5. Este elemento de la lista es para entrar a otra lista, tipo Inception.

Libro: Dive into HTML5

Si en lugar de varias pestañas abiertas desde tus marcadores, prefieres tener todo impreso en un libro, según CVander el mejor libro que se puede obtener sobre HTML5 fue escrito por Mark Piligrim:Dive into HTML5. Se puede comprar una copia de O’relly en Amazon, y si lo lees en forra digital online te sale gratis. Está en inglés y vale mucho la pena.

*** SI te gustó el post, compartelo, gracias...



viernes, 15 de junio de 2012

Introducción a HTML5





HTML5 (HyperText Markup Language, versión 5) es la version mas madura del lenguaje de programación conocido como HTML en el que se emplean corchetes (< >) para su contenido y que pretende solucionar los problemas con los que los desarrolladores web se encuentran.

Una de la grandes novedades de esta nueva version de  HTML es que incluye soporte para algunos formatos de audio y video con lo que pretende sustituir el Flash, que por mucho tiempo a sido lider en animación y aplicaciones animadas.

Una característica de html5 es que facilita la creacion de sitios web aportando por defecto algunas etiquetas que facilitan la separación de la información  que mejora la estructura, lista para usar CSS sin HashID (#).

Otro elemento novedoso de html5 es: La Geolocalización

La geolocalización es la forma de suponer donde te encuentras en el mundo y si quieres, compartir información con gente de confianza. Existen muchas maneras de descubrir donde te encuentras, por tu dirección IP, la conexión de red inalámbrica, la torre de telefonía móvil por la que habla tu teléfono móvil (celular), o GPS específicos que reciben las coordenadas de longitud y la latitud de satélites que están ene el cielo.

Afecta a mi web los nuevos cambios? 

No es necesario que cambies nada de tu pag.web  ya que HTML4 y HTML5 son 100% compatibles entre sí. Todo el código que tienes en HTML normal seguirá funcionando sin problemas en HTML5  y si tienes tu propio servidor web mucho menos tendrías que preocuparte por nada,  pero si quieres asegurarte de que tu pag.web es totalmente compatible revisa su código para verificar que no emplea etiquetas que se hayan modificado o reemplazado en el nuevo estándar y si quieres empezar a usar HTML5 lo único que tienes que hacer es colocar !DOCTYPE html al principio de cada pag.web y te permitirá usar todas las habilidades de HTML5.


Etiquetas Nuevas que mejoran la estructura: 

NOTA:Todas son compatibles con Internet Explorer 9, Firefox, Opera, Chrome y Safari. Menos con Internet Explorer 8 y versiones anteriores.

*header: Especifica un encabezado de un documento o sección.Esta etiqueta no pueden ser colocados dentro de un footer, dirección u otro elemento header.

*footer:  Define un pie de página de un documento o sección. Un pie de página suele contener el autor del documento, información del copyright, los enlaces a las condiciones de uso, información de contacto, etc.

*nav: Esta etiqueta define una sección de vínculos de navegación. 

*article: Delimita un contenido independiente en un documento.Por ej. comentarios, noticias, blog mensajes, etc.

*section: Define  secciones de un documento. Tal como capítulos, encabezados, pies de página, o cualquier otra sección del documento.

*aside: define un contenido aparte del contenido principal. El contenido de lado debe estar relacionada con el contenido circundante.
Estructura de HTML5



Otras elementos Importantes

NOTA: Por Ahora no todos son compatibles con todos los navegadores



*audio: define el sonido, como la música u otras pistas de audio.Puede usar múltiples formatos, en especial mp3, pero también depende del navegador. 



video: Inserta vídeo sin necesidad de plugins como el flash. Cualquier texto entre la etiqueta  video y  / video  mostrarán en los navegadores que no soportan vídeo.



*canvas: se utiliza para dibujar los gráficos, sobre la marcha, a través de secuencias de comandos (normalmente JavaScript). Esta etiqueta  es sólo un contenedor para los gráficos, debe utilizar un script para llamar la realidad de los gráficos.



embed: sirve para contenido incrustado pero no nativo, sino ejecutado por plugins como el de Flash.



hgroup: se utiliza para elementos del grupo del título. El elemento hgroup se utiliza para agrupar un conjunto de h1 a los elementos h6, cuando un título tiene varios niveles de las subpartidas.




*mark: indicará un texto resaltado.  Utilícela si desea resaltar partes del texto.



*time: indica una fecha u tiempo(24 horas).No es compatible con ninguno de los navegadores más importantes.



*meter: representa un valor numérico. Compatible actualmente en Opera y Chrome.



*progress, indica el estado de una tarea, lo que es una barra de progreso. Compatible con Chrome, Firefox y Opera.



*output:representa el resultado de un cálculo (como uno realizado por un script).



*bdi: Aísla una parte del texto que pueda ser formateada en una dirección distinta de otro texto fuera de ella.



*command: Define un comando (un botón de radio, una casilla de verificación o un botón de comando) que el usuario puede invocar.



*datalist: Especifica una lista de opciones predefinidas para un elemento input.se utiliza para proporcionar un "autocompletar" en función de elementos input. Los usuarios podrán ver una lista desplegable de opciones predefinidas.


*datagrid: Muy útil en ajax, representa datos de manera interactiva y permite trabajar dinámicamente con información y cambiar la página respecto a esa información.



*autofoccus: hace exactamente lo que suena, en cuanto la web se comienza a cargar, mueve el cursor y así la atención del usuario a un campo input particular. Por ahora  Autofocus solo lo soportan Safari, Chrome y Opera. Firefox e IE, lo ignorarán.



Uso de etiquetas html5:


-Uso de la etiqueta  video




-Uso de la etiqueta  audio





-Uso de la etiqueta  canvas


-Uso de la etiqueta  datalist


-uso de la etiqueta  command
Un elemento command puede ser marcado de la manera siguiente:


-uso de la etiqueta  autofocus:


-uso de la etiqueta  mark