HTML y CSS
Estructura básica
Sección titulada «Estructura básica»HTML usa marcas (tags) que definen el significado semántico del contenido. Cada
marca abre <tag> y cierra </tag>. Las marcas vacías se escriben como <br/> o
<img/>.
La estructura de un documento HTML es arborescente: cada elemento es un nodo, y los nodos se contienen unos dentro de otros formando el DOM (Document Object Model).
<!DOCTYPE html><html><head> <meta charset="UTF-8"/> <title>Título de la Página</title></head><body> <h1>Encabezado nivel 1</h1> <p>Un párrafo de texto.</p></body></html>Árbol DOM:
Directoriohtml
Directoriohead
- meta
charset="UTF-8" - title “Título de la Página”
- meta
Directoriobody
- h1 “Encabezado nivel 1”
- p “Un párrafo de texto.”
Explorador del DOM
Haz clic en cualquier etiqueta de la izquierda para analizar sus propiedades y visibilidad en el navegador.
Valores y atributos
Sección titulada «Valores y atributos»Un elemento HTML tiene un valor (el contenido entre las marcas) y puede tener atributos que configuran su comportamiento. El valor de los atributos siempre va entre comillas.
<a href="https://www.w3schools.com">Enlace a w3schools</a>Elementos HTML
Sección titulada «Elementos HTML»<table> define una tabla. <tr> es una fila (table row). <th> es celda de
encabezado y <td> celda de datos.
Anatomía de una tabla
Haz clic en cualquier etiqueta de la izquierda para ver qué hace y dónde aparece en la tabla que dibuja el navegador.
Resultado en el navegador, sin CSS:| Nombre | Apellido | Usuario |
|---|---|---|
| María | Díaz | maria.diaz |
| Juan | Castro | juan.castro |
<img> incrusta una imagen. src es la URL o ruta local, alt es el texto
alternativo para accesibilidad, y width / height definen el tamaño en píxeles.
<imgsrc="https://picsum.photos/400/250"alt="Paisaje de ejemplo"width="400"height="250"/><a> crea un enlace. El atributo href define el destino. Con target="_blank" el
enlace se abre en una nueva pestaña.
<!-- Enlace en la misma pestaña --><a href="https://developer.mozilla.org">MDN Web Docs</a>
<!-- Abre en nueva pestaña --><a href="https://www.w3schools.com" target="_blank">W3Schools ↗</a>Formulario
Sección titulada «Formulario»<form> agrupa campos de entrada. Cada <input> tiene type (text, email, submit…),
name y opcionalmente value como valor por defecto. <br/> inserta un salto de
línea.
<form>Ciudad:<br/><br/><input type="text" name="ciudad" value="Bogotá"><br/><br/>Zipcode:<br/><br/><input type="text" name="zipcode" value="1101001"><br/><br/><input type="submit" value="Enviar"></form>Práctica Interactiva: Editor HTML
Sección titulada «Práctica Interactiva: Editor HTML»Modifica el código y observa el renderizado en tiempo real. Algunas cosas concretas para probar:
- Cambia
value="Bogotá"por otra ciudad, y mira cómo cambia el texto del campo. - Cambia
type="text"portype="date"otype="color": el navegador dibuja un control completamente distinto, sin que tú programes nada. - Prueba ahora
type="email"ytype="number". Se ven iguales atext, pero no son lo mismo: cambian la validación al enviar y el teclado que aparece en un celular. No todo lo que hace un atributo es visible. - Reemplaza
value="Bogotá"porplaceholder="Escribe tu ciudad"y compara. ¿En qué se diferencia un valor por defecto de un texto de ayuda? - Agrega
disableda un campo, sin valor: es un atributo booleano y el campo se ve deshabilitado de inmediato. - Agrega un campo nuevo, por ejemplo
<input type="checkbox" checked>.
Estilos CSS
Sección titulada «Estilos CSS»Definir los estilos
Sección titulada «Definir los estilos»CSS funciona con reglas. Cada regla tiene un selector (a qué elemento aplica)
y un bloque de declaraciones con pares propiedad: valor separados por ;.
selector { propiedad: valor; otra-propiedad: otro-valor;}Antes y después: el mismo HTML, sin CSS y con CSS.
body { background-color: lightyellow; }h1 { color: navy; text-align: center; }p { font-family: Georgia, serif; color: #444; }table { border-collapse: collapse; width: 100%; }td, th { border: 1px solid #bbb; padding: 6px 10px; }Aplicar los estilos, Selectores
Sección titulada «Aplicar los estilos, Selectores»El selector determina a qué elementos HTML aplica cada regla CSS. Los tres tipos fundamentales son:
Selector de elemento, aplica a todos los elementos con esa etiqueta.
table { border-collapse: collapse; width: 100%; background: #f0f8ff; }th, td { border: 2px solid steelblue; padding: 8px 12px; }th { background: steelblue; color: white; }Selector por ID (#), se escribe con # en el CSS y se aplica con id="nombre"
en el HTML. Identifica un elemento único en la página.
<!-- Solo este th tiene el id --><th id="titulotabla">Nombre</th>#titulotabla {color: darkred;font-weight: bold;font-family: Times, serif;font-size: 14px;font-style: italic;}Selector por clase (.), se escribe con . en el CSS y se aplica con
class="nombre". Se puede reutilizar en múltiples elementos y combinar varias clases
en uno solo.
<p class="centrado colorazul">Centrado y azul.</p><p class="resaltado">Solo resaltado.</p><p>Sin clases.</p>.centrado { text-align: center; }.colorazul { color: steelblue; font-weight: bold; }p.resaltado { background: lightyellow; padding: 8px 12px; border-radius: 4px; }Laboratorio de Especificidad CSS
Sección titulada «Laboratorio de Especificidad CSS»Experimenta cómo interactúan y se superponen las reglas según el tipo de selector:
| Nombre | Apellido | Usuario |
|---|---|---|
| María | Díaz | maria.diaz |
| Juan | Castro | juan.castro |
/* Selecciona una opción arriba para ver la regla CSS correspondiente */