// Programación I · Para empezar

# Introducción a HTML y CSS

Qué es cada lenguaje, cómo se escribe y cómo se conectan

// para empezar

Dos lenguajes, dos trabajos

HTML

Dice qué es cada cosa: un título, un párrafo, una imagen, un enlace.

la estructura y el contenido

CSS

Dice cómo se ve: colores, tipografías, tamaños, espacios y colocación.

el aspecto

Más adelante llegará JavaScript, que se encarga de lo que hace la página al interactuar con ella.

El mismo contenido, con y sin CSS

El HTML es idéntico en los dos. Sin CSS, el navegador usa sus estilos por defecto.

// 1

HTML

La estructura

Elementos y etiquetas

El contenido se marca con etiquetas. Casi todas van por parejas: una de apertura y otra de cierre, que lleva una barra /.

atributo <a href="https://www.w3.org/">Visita el W3C</a> etiqueta de aperturacontenidocierre elemento

Un atributo es información extra sobre el elemento. Va en la etiqueta de apertura con la forma nombre="valor".

Elementos vacíos

Algunos elementos no tienen contenido y, por tanto, no llevan etiqueta de cierre. Toda su información va en los atributos.

<img src="foto.jpg" alt="Atardecer en el Ebro">
<br>
<meta charset="UTF-8">

Unos dentro de otros

Los elementos se pueden anidar. Lo último que se abre es lo primero que se cierra, como unas cajas dentro de otras.

✗ Mal: las etiquetas se cruzan

<p>Esto es <strong>muy importante</p></strong>

✓ Bien

<p>Esto es <strong>muy importante</strong></p>

La estructura básica

<!DOCTYPE html>
<html lang="es">
  <head>
    <meta charset="UTF-8">
    <meta name="viewport" content="…">
    <title>Mi primera web</title>
  </head>
  <body>
    <h1>¡Hola, mundo!</h1>
  </body>
</html>
  • <head> · información que no se ve en la página: codificación, título de la pestaña, enlaces a CSS
  • <body> · todo el contenido visible

Etiquetas para empezar

<h1> … <h6>

Títulos, del más importante al menos

<p>

Párrafo

<a>

Enlace

<img>

Imagen

<ul> <li>

Lista y cada uno de sus puntos

<strong>

Texto importante

<header> <main> <footer>

Cabecera, contenido principal y pie

<div>

Caja genérica para agrupar

Bloque y en línea

De bloque: empiezan en una línea nueva y ocupan todo el ancho. <h1>, <p>, <div>…

En línea: van dentro del texto y sólo ocupan lo que mide su contenido. <a>, <strong>, <span>…

Buenas prácticas

Sin sangría

<header>
<h1>Mi web</h1>
<p>Bienvenida</p>
</header>

Con sangría

<header>
  <h1>Mi web</h1>
  <p>Bienvenida</p>
</header>

// 2

CSS

El aspecto

Anatomía de una regla

Un archivo CSS es una lista de reglas. Cada regla dice «a estos elementos, aplícales estos estilos».

h1 {
  color: #546D78;
  font-size: 32px;
}

Los selectores básicos

De elemento

p { … }

Todos los elementos de ese tipo

De clase

.destacado { … }

Los que tienen class="destacado". Se puede repetir.

De id

#cabecera { … }

El único con id="cabecera"

Para dar estilos, usa clases casi siempre: se pueden repetir y combinar.

Tres formas de añadir CSS

1 En línea

<p style="color: red;">
  Texto en rojo
</p>

Sólo afecta a ese elemento

2 Interno

<head>
  <style>
    p { color: red; }
  </style>
</head>

Sólo afecta a esa página

3 Externo

<head>
  <link rel="stylesheet"
    href="css/estilos.css">
</head>

Afecta a todas las páginas que lo enlazan · la forma recomendada

Una hoja para toda la web

Si cambias el color de los títulos en estilos.css, cambia en toda la web a la vez. Además, el HTML queda limpio, sólo con contenido.

Comentarios

Notas en el código que el navegador ignora. Cada lenguaje los escribe a su manera.

En HTML

<!-- Esto es un comentario -->

En CSS

/* Esto es un comentario */

Cualquiera puede verlos en el código fuente, así que no guardes nada privado en ellos.

// y ahora

¡A escribir código!

Todo esto, con más detalle y ejemplos, en los apuntes.

Introducción a HTML → Esquema de HTML y CSS →