Las variables en CSS, también conocidas como "custom properties" (propiedades personalizadas), permiten almacenar valores que pueden ser reutilizados en todo el documento CSS. Esto facilita la gestión y el mantenimiento del código, especialmente en proyectos grandes.
¿Qué son las Variables en CSS?
Las variables en CSS son una forma de almacenar valores que pueden ser reutilizados en diferentes partes de tu hoja de estilos. Se definen con un nombre precedido por dos guiones (--
) y se accede a ellas usando la función var()
.
Sintaxis Básica
:root { --primary-color: #3498db; --secondary-color: #2ecc71; --font-size: 16px; } body { color: var(--primary-color); font-size: var(--font-size); } h1 { color: var(--secondary-color); }
En este ejemplo:
- Las variables
--primary-color
,--secondary-color
, y--font-size
se definen en el selector:root
, que representa el elemento raíz del documento. - Luego, estas variables se utilizan en las reglas de estilo para
body
yh1
.
Ventajas de Usar Variables en CSS
- Reutilización de Código: Puedes definir un valor una vez y reutilizarlo en múltiples lugares.
- Mantenimiento: Cambiar el valor de una variable actualiza automáticamente todos los lugares donde se utiliza.
- Consistencia: Asegura que los valores utilizados en todo el documento sean consistentes.
Ejemplo Práctico
Definiendo Variables
Usando Variables
body { background-color: var(--main-bg-color); color: var(--main-text-color); padding: var(--main-padding); } button { background-color: var(--main-bg-color); color: var(--main-text-color); padding: var(--main-padding); }
En este ejemplo, tanto el body
como los button
utilizan las mismas variables para sus estilos, asegurando consistencia y facilitando el mantenimiento.
Variables con Valores por Defecto
Puedes proporcionar un valor por defecto a una variable en caso de que no esté definida.
:root { --main-color: #3498db; } p { color: var(--main-color, #000); /* Usa #000 si --main-color no está definida */ }
En este caso, si --main-color
no está definida, el color por defecto será #000
.
Variables en Contextos Específicos
Las variables pueden ser definidas en cualquier selector, no solo en :root
.
Aquí, --container-padding
solo está disponible dentro del contexto de .container
.
Ejercicio Práctico
Ejercicio 1: Definir y Usar Variables
-
Define las siguientes variables en el selector
:root
:--primary-bg-color
:#ffffff
--primary-text-color
:#333333
--primary-padding
:15px
-
Aplica estas variables a los siguientes elementos:
body
: Usa--primary-bg-color
parabackground-color
y--primary-text-color
paracolor
.header
: Usa--primary-padding
parapadding
.
Solución
:root { --primary-bg-color: #ffffff; --primary-text-color: #333333; --primary-padding: 15px; } body { background-color: var(--primary-bg-color); color: var(--primary-text-color); } header { padding: var(--primary-padding); }
Resumen
Las variables en CSS son una herramienta poderosa para mejorar la reutilización, el mantenimiento y la consistencia del código. Al definir valores una vez y reutilizarlos en múltiples lugares, puedes hacer que tu hoja de estilos sea más manejable y fácil de actualizar. En el próximo tema, exploraremos las funciones en CSS, que te permitirán realizar cálculos y manipulaciones más avanzadas con tus estilos.
Maestría en CSS: De Principiante a Avanzado
Módulo 1: Introducción a CSS
- ¿Qué es CSS?
- Sintaxis y Selectores de CSS
- Cómo Añadir CSS a HTML
- Propiedades Básicas de CSS
- Colores en CSS
- Unidades y Medidas en CSS
Módulo 2: Estilización de Texto y Fuentes
- Propiedades de Texto
- Propiedades de Fuentes
- Integración de Google Fonts
- Alineación y Espaciado de Texto
- Decoración y Transformación de Texto
Módulo 3: Modelo de Caja y Diseño
- Entendiendo el Modelo de Caja
- Margen y Relleno
- Borde y Contorno
- Ancho y Alto
- Tamaño de Caja
- Propiedad Display de CSS
Módulo 4: Posicionamiento y Flotación
- Propiedad Position de CSS
- Posicionamiento Estático, Relativo, Absoluto y Fijo
- Flotación y Limpieza en CSS
- Creando Diseños con Flotación
- Índice Z en CSS
Módulo 5: Flexbox
- Introducción a Flexbox
- Propiedades del Contenedor Flex
- Propiedades del Ítem Flex
- Creando Diseños con Flexbox
- Diseño Responsivo con Flexbox
Módulo 6: CSS Grid
- Introducción a CSS Grid
- Propiedades del Contenedor Grid
- Propiedades del Ítem Grid
- Creando Diseños con CSS Grid
- Diseño Responsivo con CSS Grid
Módulo 7: Técnicas Avanzadas de CSS
Módulo 8: Diseño Responsivo
- Introducción al Diseño Responsivo
- Consultas de Medios
- Tipografía Responsiva
- Imágenes Responsivas
- Diseño Mobile-First
Módulo 9: Preprocesadores y Frameworks
- Introducción a los Preprocesadores de CSS
- Conceptos Básicos de Sass
- Conceptos Básicos de Less
- Introducción a los Frameworks de CSS
- Usando Bootstrap
Módulo 10: Mejores Prácticas y Optimización
- Mejores Prácticas de CSS
- Organización del Código CSS
- Minificación de CSS
- Optimización del Rendimiento de CSS
- Depuración de CSS