HTML5 es la última versión de HTML. El término representa dos conceptos diferentes:
Se trata de una nueva versión de HTML, con nuevos elementos, atributos y comportamientos.
Contiene un conjunto más amplio de tecnologías que permite a los sitios Web y a las aplicaciones ser más diversas y de gran alcance. A este conjunto se le llama HTML5 y amigos, a menudo reducido a HTML5.
Diseñado para ser utilizable por todos los desarrolladores de Open Web, esta página referencía a numerosos recursos sobre las tecnologías de HTML5, que se clasifican en varios grupos según su función.
Semántica: Permite describir con mayor precisión cual es su contenido.
Conectividad: Permite comunicarse con el servidor de formas nuevas e innovadoras.
Sin conexión y almacenamiento: Permite a las páginas web almacenar datos localmente en el lado del cliente y operar sin conexión de manera más eficiente.
Multimedia: Nos otorga un excelente soporte para utilizar contenido multimedia (audio , video).
Gráficos y efectos 2D/3D: Proporciona una amplia gama de nuevas características que se ocupan de los gráficos en la web como lo son canvas 2D, WebGL, SVG, etc.
Rendimiento e Integración: Proporciona una mayor optimización de la velocidad y un mejor uso del hardware.
Acceso al dispositivo: Proporciona APIs para el uso de varios compomentes internos de entrada y salida de nuestro dispositivo.
CSS3: Nos ofrece una nueva gran variedad de opciones para hacer diseños más sofisticados.
Las siglas CSS (Cascading Style Sheets) significan Hojas de estilo en cascada y parten de un concepto simple pero muy potente: aplicar estilos (colores, formas, márgenes, etc...) a uno o varios documentos HTML de forma masiva.
Se le denomina estilos en cascada porque se aplican de arriba a abajo (siguiendo un patrón denominado herencia que trataremos más adelante) y en el caso de existir ambiguedad, se siguen una serie de normas para resolverla.
La idea de CSS es la de utilizar el concepto de separación de presentación y contenido, intentando que los documentos HTML incluyan sólo información y datos, relativos al significado de la información a transmitir (el contenido), y todos los aspectos relacionados con el estilo (diseño, colores, formas, etc...) se encuentren en un documento CSS independiente.
De esta forma, se puede unificar todo lo relativo al diseño visual en un solo documento CSS
Algunas ventajas de utilizar CSS son:
Control centralizado de la presentación de un sitio web completo con lo que se agiliza de forma considerable la actualización del mismo.
Optimización del ancho de banda de la conexión, pues pueden definirse los mismos estilos para muchos elementos con un sólo selector; o porque un mismo archivo CSS puede servir para una multitud de documentos.
Mejora en la accesibilidad del documento, pues con el uso del CSS se evitan antiguas prácticas necesarias para el control del diseño (como las tablas), y que iban en perjuicio de ciertos usos de los documentos, por parte de navegadores orientados a personas.
Se reduce la duplicación de estilos en diferentes lugares, por lo que las páginas se descargan más rápido.
Es más fácil crear versiones diferentes de presentación para otros tipos de dispositivos: tablets, smartphones o dispositivos móviles, etc...