Formas de escribir un color
CSS entiende los colores de varias maneras. Todas sirven para cualquier propiedad que acepte un color.
Por su nombre
Hay unos 140 colores con nombre en inglés: red, navy, tomato, gold, teal, hotpink, rebeccapurple… Son perfectos para empezar y hacer pruebas.
Tab añade una sangría. Pulsa Escape y luego Tab para salir del editor.
Hexadecimal: #RRGGBB
Es la forma más habitual en el mundo real; la verás en todos los programas de diseño. Una almohadilla y seis cifras, en grupos de dos: rojo, verde y azul. Cada grupo va de 00 (nada) a ff (todo), en sistema hexadecimal (0–9 y a–f).
| Hexadecimal | Rojo | Verde | Azul | Color |
|---|---|---|---|---|
#ff0000 | todo | nada | nada | Rojo |
#00ff00 | nada | todo | nada | Verde |
#000000 | nada | nada | nada | Negro |
#ffffff | todo | todo | todo | Blanco |
#808080 | mitad | mitad | mitad | Gris |
No hace falta calcularlos: se copian de un selector de color. Busca «color picker» en Google o haz clic en el cuadradito de color que aparece junto a cualquier color en las DevTools.
rgb() y la transparencia
rgb() usa los mismos tres canales, pero con números del 0 al 255. Su ventaja es que admite un cuarto valor, el alfa u opacidad, después de una barra:
Tab añade una sangría. Pulsa Escape y luego Tab para salir del editor.
Color del texto y del fondo
color: el color del texto.background-color: el color del fondo. También puedes usar la forma cortabackground.
body {
color: #222;
background-color: #fdf6e3;
}
El contraste importa
Si el texto y el fondo se parecen demasiado, cuesta leer, y para mucha gente (personas mayores, con baja visión o usando el móvil al sol) resulta imposible.
Tab añade una sangría. Pulsa Escape y luego Tab para salir del editor.
Tipografías: font-family
font-family elige la fuente. Siempre se escribe como una lista de reserva, separada por comas: el navegador usa la primera que tenga disponible.
body {
font-family: "Helvetica Neue", Arial, sans-serif;
}
- Los nombres con espacios van entre comillas.
- La lista acaba con una familia genérica, que siempre existe:
| Genérica | Cómo es | Uso típico |
|---|---|---|
sans-serif | Sin remates, limpia | Interfaces y textos en pantalla |
serif | Con remates, clásica | Textos largos, aire elegante |
monospace | Todas las letras igual de anchas | Código |
system-ui | La de tu sistema operativo | Aspecto «nativo» |
Fuentes de Google Fonts
Para usar fuentes que no tiene todo el mundo instaladas, la forma más fácil es Google Fonts (fonts.google.com), con cientos de fuentes gratuitas:
- Elige una fuente y pulsa Get font → Get embed code.
- Copia las etiquetas
<link>que te da y pégalas en el<head>, antes de tu hoja de estilos. - Usa el nombre de la fuente en tu CSS.
<head>
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Poppins:wght@400;700&display=swap" rel="stylesheet">
<link rel="stylesheet" href="estilos.css">
</head>
body {
font-family: "Poppins", sans-serif;
}
Tamaños: font-size y las unidades
h1 { font-size: 40px; }
p { font-size: 1.125rem; }
Las unidades más importantes:
| Unidad | Qué es | Cuándo usarla |
|---|---|---|
px | Píxeles: un tamaño fijo | Bordes, detalles pequeños |
rem | Veces el tamaño de letra base de la página (normalmente 16px) | Tamaños de texto y espacios |
em | Veces el tamaño de letra del propio elemento | Espacios que crecen con su texto |
% | Porcentaje de algo del padre | Anchos |
Más propiedades del texto
Tab añade una sangría. Pulsa Escape y luego Tab para salir del editor.
| Propiedad | Para qué | Valores típicos |
|---|---|---|
font-weight | Grosor | normal (400), bold (700), de 100 a 900 |
font-style | Cursiva | normal, italic |
line-height | Altura de cada línea | 1.5 (sin unidad: 1,5 veces el tamaño de letra) |
text-align | Alineación | left, center, right, justify |
text-decoration | Subrayado | none, underline |
text-transform | Mayúsculas | uppercase, lowercase, capitalize |
letter-spacing | Espacio entre letras | 0.05em |
Errores típicos
- Confundir
colorconbackground-color, o inventarsefont-color(no existe). - Hexadecimales mal escritos: sin
#, o con cinco o siete cifras. - Olvidar las comillas en fuentes con espacios:
font-family: Open Sansfalla. - No poner una familia genérica al final de la lista.
- Poner el
<link>de Google Fonts después de tu CSS, o no ponerlo y usar la fuente igualmente. - Texto con poco contraste, como gris claro sobre blanco.
- Justificar textos (
justify) en columnas estrechas: quedan huecos muy feos entre palabras.
Ejercicios
Ejercicio 1: la tarjeta de visita (fácil)
Da estilo a esta tarjeta: fondo #1d3557, texto blanco, el nombre en 2rem y negrita, el cargo en mayúsculas con algo de espacio entre letras, y todo centrado.
Tab añade una sangría. Pulsa Escape y luego Tab para salir del editor.
Pista
El fondo, el color del texto y la alineación van en .tarjeta; el resto, en .nombre y .cargo.
Solución
.tarjeta {
padding: 24px;
background-color: #1d3557;
color: white;
text-align: center;
}
.nombre {
font-size: 2rem;
font-weight: bold;
}
.cargo {
text-transform: uppercase;
letter-spacing: 0.1em;
}
Ejercicio 2: mejora la lectura (medio)
Este artículo cuesta de leer. Mejóralo: tipografía de la familia serif, tamaño de 1.125rem, altura de línea de 1.7, texto #222 sobre fondo #fffdf7, y el título en una fuente sans-serif.
Tab añade una sangría. Pulsa Escape y luego Tab para salir del editor.
Pista
Cambia los valores de body y añade una regla para h1 con su propia font-family.
Solución
body {
font-family: Georgia, serif;
color: #222;
background-color: #fffdf7;
font-size: 1.125rem;
line-height: 1.7;
}
h1 {
font-family: system-ui, sans-serif;
}
Ejercicio 3: tu paleta (reto)
Elige tres colores que te gusten en un selector de color y escribe sus hexadecimales. Crea una página con un título, un párrafo y un enlace usándolos: uno para el fondo, otro para el texto y otro para los títulos y enlaces. Comprueba el contraste en las DevTools.
Tab añade una sangría. Pulsa Escape y luego Tab para salir del editor.
Pista
Herramientas como Coolors (coolors.co) generan paletas que combinan bien.
Solución
Una posible:
body {
background-color: #f1faee;
color: #1d3557;
font-family: sans-serif;
}
h1, a {
color: #e63946;
}
Ficha resumen
- Colores: nombre (
tomato), hexadecimal (#ff6347),rgb(255 99 71), con transparenciargb(0 0 0 / 50%). color= texto ·background-color= fondo. Cuida el contraste (4.5 o más).font-family: lista de reserva acabada en genérica. Google Fonts:<link>en el<head>.- Tamaños de letra en
rem(1rem ≈ 16px). font-weight,line-height(1.5–1.7 en textos),text-align,text-decoration,text-transform,letter-spacing.
Glosario
| Término | Definición |
|---|---|
| Hexadecimal | Forma de escribir un color con # y seis cifras: dos para el rojo, dos para el verde y dos para el azul. |
| RGB | Modelo de color que mezcla luz roja, verde y azul. En CSS: rgb(255 0 0). |
| Opacidad | Grado en que un color deja ver lo que hay detrás. También se llama canal alfa. |
| Contraste | Diferencia de luminosidad entre el texto y su fondo, que decide si se lee bien. |
font-family | Propiedad que elige la tipografía, como una lista de fuentes de reserva. |
| Familia genérica | Tipo de letra que siempre existe, como serif, sans-serif o monospace. |
| Google Fonts | Catálogo gratuito de tipografías para usar en webs. |
rem | Unidad relativa al tamaño de letra base de la página, normalmente 16px. |
line-height | Altura de cada línea de texto; da aire entre las líneas. |