D3 - Diferencias HTML y HTML5 - Noelia
D3 - Diferencias HTML y HTML5 - Noelia
HTML Y HTML5
Noelia
12/02/2013
Índice
Tabla comparativa…………………………………………………………………………………………………………………….3
Atributos globales…………………………………………………………………………………………………………………….4
Nuevas etiquetas................................................................................................................8
Canvas…………………………………………………………………………………………………………………………………….12
Tabla de etiquetas………………………………………………………………………………………………………………….13
Diferencia estructural………………………………………………………………………………………………………..…..19
Link de interés………………………………………………………………………………………………………………………..20
Tabla comparativa.
HTML HTML 5
Declaración DOCTYPE: Declaración: DOCTYPE
! <DOCTYPE HTML PUBLIC "- / / W3C / / DTD <! DOCTYPE html>
HTML 4.01 / / EN"
"http://www.w3.org/TR/html4/strict.dtd">
Audio y Video no forman parte de la Audio y videos son partes integradas de las
especificación HTML. especificaciones de HTML5, por ejemplo las
etiquetas <audio> y <video>.
Vector Graphics se hece posible con la ayuda de Los gráficos vectoriales son partes integradas de
tecnologías como VML, Silverlight, Flash, etc HTML5, por ejemplo, SVG y lona
Es casi imposible conseguir una verdadera JS API de geolocalización HTML5 ayuda a
GeoLocation de usuario navegar por cualquier identificar la ubicación del usuario navegar
sitio, especialmente si se trata de dispositivos cualquier sitio web (proporcionado por el usuario
móviles. lo permite)
Caché del navegador puede ser utilizado como Memoria caché de aplicaciones, base de datos
almacenamiento temporal. SQL y almacenamiento Web está disponible como
almacenamiento del lado del cliente. Accesible a
través de la interfaz JavaScript en los navegadores
compatibles con HTML5.
Sockets Web no están disponibles. En general, los Se pueden establecer canales de comunicación
mecanismos utilizados son encuestas largas y full duplex con el servidor usando Web Sockets.
streaming. Accesibles usando la interfaz JavaScript en
navegadores que soporten HTML5.
Funciona con todos los navegadores antiguos La mayoría de los navegadores modernos han
empezado a soportar HTML5 por ejemplo, Firefox,
Mozilla, Opera, Chrome, Safari, etc
accesskey
Lo que permite es una mejora en la accesibilidad del sitio, pudiendo llegar a esa zona de la página
pulsando una letra o número del teclado.
Un ejemplo podría ser el de un enlace o el de un cajetín de un formulario:
class
El atributo class básicamente se usa para lo que siempre se ha utilizado, y es para controlar las hojas de
estilo. Dentro de un class se pueden poner varios contenidos haciendo referencia a los correspondientes
en la hoja de estilos.
contenteditable
Este es uno de los nuevos atributos que aparece, y permite que un acceso externo deje o no editar o
cambiar el contenido de una etiqueta. Es un elemento heredado de los padres, por lo que si un padre no
se puede editar, los hijos tampoco.
Al ser un elemento booleano, sólo es necesario ponerlo con un “true” o “false” para que funcione.
contextmenu
El atributo contextmenu le permite mostrar un menú sin ocupar el valioso espacio de interfaz de usuario
para el menú. Se trata de un menú que se activa en los eventos, como mouseup o keyup
proporcionando un menú burbuja que proporciona opciones y acciones basadas en las selecciones.
dir
El atributo dir básicamente indica la dirección del texto, o, mejor dicho, de escritura, para aquellos
idiomas en los que se escribe de derecha a izquierda y no de izquierda a derecha como lo hacemos
nosotros.
Tiene tan sólo dos opciones que corresponden a lo que acabo de comentar: ltr (left to right) o rtl (right
to left).
<div dir="ltr">Este contenido está escrito de izquierda a derecha...</div>
draggable
Un ejemplo “de lo que hasta ahora podía tratarse como tal” sería una imagen que, al arrastrarla fuera de
la ventana y colocarla en un editor de imágenes, se podía abrir. Otro ejemplo el de un enlace que se
arrastraba sobre una pestaña del navegador y ejecutaba esa dirección.
Los parámetros que permite son true, false o auto, que es el que está por defecto, dejando a cada
usuario / navegador decidir los elementos.
hidden
Hasta ahora cuando querías que un bloque de contenido no se viera tenías que utilizar los CSS para
ocultarlo. Ahora eso ya no será necesario, ya que si un elemento incorpora este atributo simplemente
no se mostrará por pantalla.
De todas formas, este elemento no debe usarse para ocultar bloques o pestañas, sino que se ha de
utilizar para elementos que no van a ser relevantes.
Por ahora no hay ningún navegador que lo soporte, por lo que habrá que esperar a ver qué ocurre con
el contenido que va dentro de estos elementos.
<div hidden>Este contenido está oculto por no ser relevante para el usuario...</div>
id
Identifica un elemento de forma única por lo que sólo puede haber uno que se llame así por página. A
parte de utilizarse en las hojas de estilo, lo más habitual es su uso con AJAX y la función
getElementById().
Permiten ampliar todos esos pequeños detalles que van a ampliar el juego.
El itemscope permite crear un nuevo conjunto de elementos los cuales han de ser de un tipo, que se
informa con el itemtype. Este tipo ha de venir dado con una dirección URL (que indica el microdato
nuevo)
El itemid es el que identifica al elemento, el itemref hace referencia a otros elementos que han de poder
ser utilizados y, para acabar, itemprop viene a ser el que da los valores.
Y, en este caso, sólo hay una forma de entender todo lo que he puesto, y es con un ejemplo:
lang
Marca el idioma del contenido de ese fragmento de texto. Hay que tener en cuenta que, aunque un
documento se le aplique un idioma, por norma general, puede haber fragmentos de texto de contenidos
que se encuentran en otros idiomas, por lo que hay que indicarlos.
spellcheck
Gracias a spellcheck se podrá indicar qué contenidos o no queremos que puedan sufrir una corrección
ortográfica o gramatical. Seguramente acabará usándose en los formularios en los que haya que incluir
palabras sin sentido, o en textos en un idioma distinto del general de la página.
Tiene tres posibles valores, que son true, false y default.
style
Básicamente a cualquier elemento se le puede aplicar directamente, en línea, algunos atributos que
hacen referencia a las hojas de estilo.
tabindex
Este es quizá uno de los desconocidos a la hora de mejorar la usabilidad de un sitio, y es que gracias a
tabindex cada vez que pulsemos en la tecla “tab” vaya a un sitio y otro de la página. De todas formas, no
todos los elementos permiten tener este atributo, sólo aquellos en los que el usuario puede focalizarse.
Lo más habitual es su uso en formularios, para que el usuario vaya saltando de un campo a otro en el
orden que tú le digas, y no en el que el código fuente tenga.
title
El genial title básicamente hace lo que su nombre indica: titulear. Y es que muchos elementos, cuando
se pone el ratón encima permiten mostrar más información de lo que eso significa. Un ejemplo muy
habitual sería el las abreviaturas.
data-*
Tenemos la posibilidad de incorporar los atributos de datos personalizados en todos los elementos
HTML.
Básicamente la idea es la de poder añadir información “oculta” que no moleste a los lectores pero que
los navegadores y los robots sean capaces de interpretar si se les añade la forma de hacerlo.
translate
Este atributo puede aparecer en cualquier elemento, y se sólo tiene dos valores: yes o no. Si el valor es
no, las herramientas de traducción deben proteger el texto y no traducirlo.
Añadir el atributo translate a su página puede ayudar a los lectores a entender mejor su contenido
cuando se ejecuta a través de sistemas de traducción automática.
<p>The question in the title <cite translate="no">How Far Can You Go?</cite></p>
Nuevas etiquetas.
1. Sintaxis simplificada
La declaración de tipo de documento de forma más sencilla es sólo una de las muchas novedades de
HTML5. Ahora solo tienes que escribir solamente: <DOCTYPE HTML!>. La sintaxis de HTML5 es
compatible conHTML4 y XHTML1, pero no con SGML.
<body>
<header> <hgroup>
<h1>Título de la web</h1>
<h2>Subtítulo de la web</h2>
</hgroup></header>
Contenido de la web.
<footer>Pie de página.</footer>
</body>
<section id="izquierda">
<h2>Ultimas Novedades<h2>
<article>(( NOVEDAD UNO ))</article>
</section>
Para marcar estos comandos puede usarse la etiqueta command. Esta etiqueta se usa para marcar
acciones que el usuario puede realizar. Podemos usarla en múltiples partes de la página web (enlaces,
botones, menús… a través del atributo command) y, desactivando el comando, se desactivará en todas
sus apariciones.
Para que command se pueda activar debe estar dentro de una etiqueta <menu>. Fuera de esa etiqueta
sólo será una marca que podrá utilizarse como atajo de teclado.
<menu type="toolbar">
<command id="align-left" label="Izquierda" onclick="setAlign('left')">
</menu>
<figure> puede contener el <figcaption>, que a su vez contiene la leyenda de la figura contenida en la
etiqueta <figure> permitiéndole ingresar una descripción que puede vincular más la figura con su
contenido.
<figure>
<img src="/figure.jpg" width="304" height="228" alt="Picture">
<figcaption>Leyenda de la figura</figcaption>
</figure>
La etiqueta <audio> identifica contenido de sonido, como música u otras secuencias de audio. La
etiqueta <audio> posee atributos que controlan qué, cuándo y cómo se reproducirá el audio. Los
atributos son src, preload, control, loop y autoplay.
La etiqueta <video> le permite difundir archivos de video o transmitir medios visuales en modalidad
continua. Este tiene todos los atributos de la etiqueta <audio> y tres más: poster, width y height. El
atributo poster le permite identificar una imagen que se utilizará mientras el video está cargando, o en
el desafortunado caso en el que el video definitivamente no vaya a cargar.
Las etiquetas <video> y <audio> pueden contener la etiqueta <source>, la cual define recursos
multimedia para estas etiquetas. Con este elemento, especificas elementos alternativos de audio o
video de los cuales el navegador puede seleccionar con base en su soporte de tipos o codecs de medios.
<audio>
<source src="/music/good_enough.wma" type="audio/x-ms-wma">
<source src="/music/good_enough.mp3" type="audio/mpeg">
<p>Your browser does not support the HTML 'audio' element.</p>
</audio>
La etiqueta <input> tiene varios nuevos tipos y atributos que mejoran la facilidad de uso del formulario.
HTML5 ha introducido nuevos tipos de entrada diseñados para organizar y categorizar datos, replicando
el enfoque semántico general de HTML5. El viejo adagio de que el formulario debe seguir a la función es
apropiado para describir las funciones de los formularios HTML5.
El campo de formulario <input> puede estar por fuera de las etiquetas <form>. El atributo form
identifica el formulario o formularios a los cuales pertenece el campo de entrada. También identifica el
formulario al que pertenece al referenciarse al ID del formulario.
9. Elemento <embed>
La etiqueta embed se usa para integrar contenido externo (normalmente no HTML) al contenido; por
ejemplo, un plug-in para archivos Adobe Flash SWF.
¿Qué es?
Es un área donde podemos dibujar como si fuera un lienzo. El elemento canvas permite especificar un
área de la página donde se puede, a través de scripts, dibujar y renderizar imágenes, lo que amplía
notablemente las posibilidades de las páginas dinámicas y permite hacer cosas que hasta ahora estaban
reservadas a los desarrolladores en Flash, con la ventaja que para usar canvas no será necesario ningún
plugin en el navegador, lo que mejorará la disponibilidad de esta nueva aplicación.
¿Cómo se usa?
Cuando trabajamos con canvas, realmente toda la magia la haremos en JavaScript. Primero debemos
referenciar el elemento canvas y adquirir su contexto (API). Por el momento el único contexto
disponible es el contexto bidimensional. Recomiendo usar firebug o similares a la hora de aprender a
usar la API para poder ver los cambios en vivo y avanzar con mayor velocidad:
Una vez adquirimos el contexto, podemos empezar a dibujar en la superficie del canvas usando la API a
tal efecto documentada en http://bit.ly/l1BMyi. La API bidimensional ofrece muchas de las herramientas
que podemos encontrar en cualquier aplicación de diseño gráfico como Adobe Illustrator o Inkscape:
trazos, rellenos, gradientes, sombras, formas y curvas Bézier. Claro está deberemos especificar cada
acción con ellas usando JavaScript.
Manuales e información:
http://www.html5canvastutorials.com/
http://www.desarrolloweb.com/manuales/manual-canvas-html5.html
http://www.youtube.com/watch?v=JM9_xJP8mNQ
Tabla de etiquetas.
<bb> makeapp
<bdo> dir
Salto de línea
<br> Atributos globales
Atributo eliminado: clear
<code> globales
<dd> Ninguno
Etiqueta cambiada
<hr> Atributos globales Atributo eliminado: align, noshade,
size, width
http://www.w3.org/TR/2009/WD-html5-diff-20090212/
http://www.tutorialspoint.com/html5/html5_tutorial.pdf
http://www.w3.org/TR/2008/WD-html5-20080610/
http://www.w3.org/TR/html4/index/attributes.html
http://www.whatwg.org/specs/web-apps/current-work/multipage/