Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Solucionado (ver solución)
Solucionado
(ver solución)
2
respuestas

Duda sobre variables css

Buenas, mi duda con respecto a las variables es que si las declaro (por decirlo de alguna manera) en un archivo css ¿Puedo hacer uso de esas mismas variables en otro archivo css? Como lo hace la profe en la clase ".destacados__boton { color: var(--boton-rojo); }". ¿Se puede libremente o tiene algo que ver que esten enlazadas al mismo archivo HTML?

2 respuestas
solución!

Hola Eduardo, si se puede lograr pero debe tener en cuenta lo siguiente:

Las variables CSS funcionan como cualquier otra propiedad CSS. Deben declararse en el padre del elemento de destino. Así que normalmente se declararía en el elemento de nivel superior html o root:.

No importa si las propiedades CSS personalizadas se declaran en un archivo CSS externo o en el mismo archivo.

Supongamos:

Este es el archivo variables.css

:root {
    --red: #f00;
    --green: #0f0;
    --blue: #00f;
}

y este es el archivo styles.css

.red {
    background-color: var(--red);
}
.green {
    background-color: var(--green);
}
.blue {
    background-color: var(--blue);
}

el html quedaría algo así en las referencias:

<!DOCTYPE html>
<html lang="en">
    <head>
        <link href="customproperty/variables.css" rel="stylesheet">
        <link href="customproperty/style.css" rel="stylesheet">
        <style>
            .module {
                --red: #800;
                --green: #080;
                --blue: #008;
            }
        </style>
    </head>
    <body>
        <div class="red">red</div>
        <div class="green">green</div>
        <div class="blue">blue</div>
        <div class="module">
            <div class="red">red in module</div>
            <div class="green">green in module</div>
            <div class="blue">blue in module</div>
        <div>
    </body>
</html>

Saludos.

Hola Carlos! Entendi perfecto, no me cerraba pero ahora si comprendi mucho mejor. Muchas gracias por la acalaración, saludos :D