Página personal de Yaccenia Avendaño

Introducción a HTML5 y CSS

HTML, siglas de HyperText Markup Language («lenguaje de marcado de hipertexto»), es el lenguaje de marcado predominante para la elaboración de páginas web. Es usado para describir la estructura y el contenido en forma de texto, así como para complementar el texto con objetos tales como imágenes. El HTML se escribe en forma de «etiquetas», rodeadas por corchetes angulares (<,<).

CSS es un lenguaje de hojas de estilos creado para controlar el aspecto o presentación de los documentos electrónicos definidos con HTML y XHTML. CSS es la mejor forma de separar los contenidos y su presentación y es imprescindible para crear páginas web complejas.

Vídeo Introducción HTML

Secciones y líneas generales de un documento HTML5

La especificación HTML5 trae muchos nuevos elementos a los desarrolladores web, permitiéndoles describir la estructura de un documento web con semántica estandarizada. Este documento describe estos elementos y cómo usarlos para definir el perfil de cualquier documento.

Problemas resueltos por HTML5

La definición de la estructura de un documento en HTML 4 y su algoritmo de perfilado es muy tosco y genera numerosos problemas:

  • HTML5 quita la necesidad de elementos <div> para definir secciones semánticas sin definir valores específicos para los atributos class, introduciendo un nuevo elemento, <section>, el elemento de sección HTML.
  • Mezclar varios documentos es difícil: la inclusión de un sub-documento en un documento principal. Esto se resuelve en HTML5 con los elementos de seccionado (<article>, <section>, <nav> y <aside>) son siempre subsecciones de su sección ancestra más cercana.
  • HTML5 introduce el elemento <hgroup> que oculta todos los elementos de cabecera excepto el primero de más alto rango (por ejemplo, <hgroup><h1> Justine < /h1><h2>Les Malheurs de la Vertu </h2></hgroup> crea el perfil 1. Justine).
  • Un documento puede tener secciones especiales conteniendo información relacionado que no es parte del flujo principal. HTML5 introduce el elemento <aside> permitiendo a dichas secciones no ser parte del perfil principal.
  • Hay información relacionada no al documento pero si al sitio entero, como logos, menús, tablas de contenidos, o información de derechos de autor y notas legales. Para ese propósito, HTML5 introduce tres elementos de sección específicos: <nav> para colecciones de enlaces, como una tabla de contenidos, <footer> y <header> información relacionada con el sitio.

De manera más general, HTML5 trae precisión a las características de seccionado y cabecera, permitiendo a los perfiles de documento ser predecibles y usados por el navegador para mejorar la experiencia de usuario.

El algoritmo de perfilado de HTML5

Definiendo secciones en HTML5

Todo el contenido incluido dentro del elemento <body> es parte de una sección. Las secciones en HTML5 pueden ser anidadas. Además de la sección principal, definida por el elemento <body>, los límites de la sección son definidos explícita o implícitamente. La secciones definidas explícitamente son el contenido definido en las etiquetas <body>, <section>, <article>, <aside>, <footer>, <header>, y <nav>. Nota: Cada sección puede tener su propia jerarquía de cabeceras. Por lo tanto, incluso una sección anidada puede tener un elemento <h1>. Consulte también Definiendo cabeceras en HTML5.

HERENCIA Y CASCADA EN CSS

Herencia

En CSS los valores de propiedades configurados en un elemento se transferirán en forma descendente a sus descendientes. Así como los hijos heredan de sus padres, lo hacen igualmente los elementos HTML. Los elementos HTML heredan propiedades estilísticas.

Cascada

soluciona los conflictos cuando varias declaraciones afectan a un elemento determinado. Las declaraciones importantes anulan a las que no lo son tanto. Entre declaraciones de igual importancia, la especificidad de la regla controla cuál se aplica. Y, si todas las demás son iguales, el orden de las fuentes supone la distinción definitiva. CSS establece una serie de reglas para establecer cuál prevalece, según tres factores: importancia, especificidad y orden.

  • IMPORTANCIA: son las declaraciones que van seguidas de una directiva !important, que explicita la importancia de esa declaración. Las declaraciones importantes de una hoja de estilo de usuario tienen prioridad sobre todas las demás.
  • ESPECIFICIDAD: Es una medida de cuán específico es el selector de una regla. Un selector de especificidad baja puede dar como resultado muchos elementos (como *, que da como resultado todos los elementos del documento), mientras que un selector con una especificidad elevada puede que sólo dé como resultado un único elemento de una página (como #nav, que sólo da como resultado el elemento con una id de nav). La especificidad de un selector puede calcularse fácilmente. Si dos o más declaraciones entran en conflicto por un elemento determinado y todas las declaraciones tienen la misma importancia, la de la regla con el selector más específico será la que "gane". La especificidad tiene cuatro componentes; por ejemplo a, b, c y d. El componente "a" es el más distintivo y el "d", el que menos.
    • El componente "a" es bastante sencillo: es 1 para una declaración en un atributo style; si no, es 0.
    • El componente "b" es el número de selectores de id en el selector (los que empiezan con #).
    • El componente "c" es el número de selectores de atributo, incluidos los selectores de clase y pseudoclases.
    • El componente "d" es el número de tipo de elementos y pseudoelementos del selector.
  • ORDEN: Es cuando dos declaraciones afectan al mismo elemento, tienen la misma importancia y la misma especificidad, la señal distintiva final es el orden en las fuentes.

Ejemplos de Importancia, Especifidad y Orden.

Importancia
  • h1{color:lime !important;}
  • body h1{color:purple;}

En este ejemplo se puede observar que si las declaraciones son normales el texto del titular seria de color purple, pero como se coloca la directiva !important, tiene prioridad y por lo tanto el texto es lime

Especificidad
  • h1{color:lime;} /* 0,0,0,1 */
  • body h1{color:#696969;} /* 0,0,0,2 */

Los Titulares serían color #696969(gris), porque su selector cuenta con más elementos.

  • h1.intro{color:BlueViolet;} /* 0,0,1,1 */
  • body h1{color:#696969;} /* 0,0,0,2 */

Los Titulares con class="intro" sería BlueViolet, porque una sola clase pesa más que dos elementos.

  • h1.intro{color:BlueViolet;} /* 0,0,1,1 */
  • body h1.intro{color:Coral;} /* 0,0,1,2 */

Ahora el mismo Titular sería coral, porque hay el mismo número de clases pero la segunda regla tiene más elementos.

  • #especial { color: green; } /* 0,1,0,0 */
  • body h1 { color: #696969; } /* 0,0,0,2 */

Un Titular con id="especial" sería color green (verde), porque un solo id pesa más que cualquier cantidad de elementos.

  • #resumen { color: Maroon; } /* 0,1,0,0 */
  • body h1.tit { color: MediumPurple; } /* 0,0,1,2 */

Un Titular con id="resumen" sería color Maroon (vinotinto), porque un solo id pesa más que cualquier cantidad de clases y elementos.

Orden
  • body h1.destacado{color:red !important;} /* 0,0,1,2 */
  • html body .destacado{color:Olive !important;} /* 0,0,1,2 */

Su importancia, como se ve, es la misma, y su especificidad, idéntica —0,0,1,2—. Pues será de color Olive, porque a igualdad de importancia y especificidad, una regla que aparezca posteriormente en la hoja de estilo gana mayor peso.

Ejemplo en linea

Ejemplo de Cabecera: header

Ejemplo de Cabecera: header

Ejemplo de Cabecera: header

Ejemplo de Cabecera: header

Ejemplo de Cabecera: header

Ejemplo de Cabecera: header

@font CSS

@font-face permite al autor especificar fuentes online para visualizar en sus páginas web. Al permitir a los autores proporcionar sus propias fuentes, @font-face elimina la necesidad de depender del numero limitado de fuentes de usuarios instaladas en sus computadoras.

Sistema Operativo Android, Google Fonts

En la cabecera

Utilizando dos tipos de Fuentes

< link href="https://fonts.googleapis.com/css?family=Open+Sans|Sansita" rel="stylesheet"" >

En el estilo

p { font-family: 'Sansita', sans-serif; }

p { font-family: 'Open Sans', sans-serif; }

fuente ‘Fira’ del Sistema Operativo de Firefox FiraOpenType

En el estilo

@font-face { font-family: 'FiraMono'; src: url('FiraMono-Regular.otf');}

.firefox{ font-family: FiraMono;

Imágenes responsive con la etiqueta picture, Imágenes de Mapas de bits y archivos de imagen vectorial SVG.

Imágenes responsive con la etiqueta picture

Actualmente tenemos gran variedad de dispositivos desde los que accedemos a internet. Smartphones, tablets, laptops, desktops, televisores, incluso relojes.

Todos ellos tienen un tamaño de pantalla diferente y también una resolución diferente. Una imagen en un smartphone puede verse muy nítida, pero ese mismo archivo en un monitor de alta resolución se verá pixelada.

El nuevo elemento <picture> de HTML5 permite describir con todo detalle cómo deben cargarse las imágenes de tu sitio web. Los usuarios se aprovecharán de las ventajas de cargar solamente las imágenes optimizadas para el dispositivo que están utilizando, lo que es especialmente útil para usuarios con móviles y conexiones lentas a Internet. El elemento <picture>, será posible escribir código HTML limpio y semántico, dejando que el navegador haga todo el trabajo de seleccionar la mejor imagen para cada situación.

html

Imagenes de Mapa de Bits.

Una imagen es un mapa de bits cuando está compuesta por una serie de puntos (también llamados píxel), que contienen información acerca del color.

Estos puntos o píxeles que forman la imagen se sitúan en un número determinado, a mayor número de puntos o píxeles, mayor calidad de imagen, esto es lo que se conoce por resolución de imagen.

Las imágenes de mapa de bits dependen de la resolución, es decir, contienen un número fijo de píxeles. Cada uno de estos píxeles posee una situación y un valor de color concreto. Cuando trabajamos sobre un mapa de bits, lo que hacemos en realidad es trabajar sobre cada uno de estos puntos. El píxel es por tanto, dentro de la imagen, la unidad de información básica. Los píxeles están colocados de tal manera que juntos forman una rejilla, cada celda de la rejilla es un píxel y todos juntos forman la imagen. Al modificar esta rejilla, por ejemplo, ampliando su tamaño, cambiamos la distribución, el número y la información de color de cada uno de ellos, por tanto, realizar cambios o modificaciones sobre estos píxeles afecta directamente a la imagen que forman.

bitmap

Imagen vectorial SVG.

Las imágenes vectoriales se construyen a partir de vectores. Los vectores son objetos formados matemáticamente. Un vector se define por una serie de puntos que tienen unas manecillas con las que se puede controlar la forma de la línea que crean al estar unidos entre sí. Los principales elementos de un vector son las curvas Béizer (curvas representadas matemáticamente).

Estas líneas o curvas béizer son muy manejables ya que permiten muchas posibilidades por su plasticidad. Estas características las convierten en la manera ideal de trabajar cuando se trata de diseño gráfico, (como creación de logotipos o dibujos). La versatilidad de las mismas las convierten en una manera muy útil para trabajar también con textos ya que se pueden modificar y deformar sin límite, a cada letra se le pueden asignar contornos editables además de poder descomponer la misma en varios objetos.

Negocios

Páginas Recomendadas

Introducción al HTML5

Un poco de historia

Como bien indica su propio nombre es la 5 versión del estándar de WWW (World Wide Web), el W3C a estado años trabajando en este nuevo estándar después del XHTML, el cual se puede denominar como uno de sus fracasos, al tener un lenguaje muy estricto, y no ser compatible con la mayoría de las webs...

Introducción al CSS

Breve historia de CSS.

Las hojas de estilos aparecieron poco después que el lenguaje de etiquetas SGML, alrededor del año 1970. Desde la creación de SGML, se observó la necesidad de definir un mecanismo que permitiera aplicar de forma consistente diferentes estilos a los documentos electrónicos.