Сергей Фомин
size = 2;
width = size * 2;
> 4
height = size + 10;
> 12
size = 10;
width = size * 2;
> 20
height = size + 10;
> 20
$base-color: #c6538c;
$normal-size: 18px;
$step: 20px;
h1 {
border: 1px solid $base-color;
font-size: $normal-size;
margin-right: $step;
}
h1 {
--my-variable: red;
}
h1 {
--my-variable: red;
color: var(--my-variable);
}
h1 {
--my-variable: red;
color: var(--my-variable, pink);
}
h1 {
--my-variable: red;
color: var(--my-variable, pink);
}
h1:hover {
--my-variable: blue;
}
:root {
--primary-color: red;
--self-color: blue;
}
header {
background-color: var(--primary-color);
color: var(--self-color);
}
body {
--primary-color: red;
color: var(--primary-color);
}
<body>
<header>Red</header>
<main>Red</main>
</body>
body {
--primary-color: red;
color: var(--primary-color);
}
header {
--primary-color: green;
}
<body>
<header>Green</header>
<main>Red</main>
</body>
header {
--text-color: red;
color: var(--text-color);
}
main {
color: var(--text-color);
}
<body>
<header>Red</header>
<main>Not Red</main>
</body>
:root {
--primary-color: 20px;
}
header {
background-color: red;
}
header {
background-color: var(--primary-color);
}
$base: 140px;
$width: $base / 4;
--base: 140px;
--width: calc(var(--base) / 4);
header {
--box-shadow-color: yellow;
box-shadow: 0 0 30px var(--box-shadow-color);
}
header:hover {
--box-shadow-color: orange;
}
<link rel="stylesheet" href="light-theme.css">
<link rel="stylesheet" href="dark-theme.css">
<body>
<h1>Title</h1>
</body>
h1 {
color: red;
}
<body class="dark-theme">
<h1>Title</h1>
</body>
body.dark-theme h1 {
color: blue;
}
:root {
--color: red;
--size: 16px;
}
button {
color: var(--color);
font-size: var(--size);
}
body.dark-theme {
--color: white;
--size: 15px;
}
const root = document.querySelector(':root');
// Прочитать переменную
const styles = getComputedStyle(root);
const primary = styles.getPropertyValue('--primary-color');
// Записать новое значение
root.style.setProperty('--primary-color', 'green');
.header .wrapper.wrapper--size-m {
padding: 10px;
}
@media (min-width: 768px) {
.header .wrapper.wrapper--size-m {
padding: 15px;
}
}
:root {
--offset: 10px;
}
.header .wrapper.wrapper--size-m {
padding: var(--offset);
}
@media (min-width: 768px) {
:root {
--offset: 15px;
}
}
portadell<svg class="svg-with-attr" viewBox="0 0 55.867 55.867">
<path
stroke="var(--iconStroke)"
stroke-width="var(--iconStrokeWidth)"
fill="var(--iconFill)"
d="...">
</svg>
portadell.svg-with-attr {
--iconFill: #eeeeee;
--iconStroke: #000000;
--iconStrokeWidth: 1px;
}
Elad Shechter/* HEX - красный, зелёный, синий */
color: #ff0000;
/* RGB - красный, зелёный, синий */
color: rgb(255, 0, 0);
/* HSL - цвет, насыщенность, свечение */
color: hsl(0, 100%, 50%);
:root {
--color: 60;
--light: hsla(var(--color), 50%, 75%, 100%);
--normal: hsla(var(--color), 50%, 50%, 100%);
--darker: hsla(var(--color), 50%, 35%, 100%);
}
.title {
color: var(--primary-color);
&:hover {
--primary-color: red;
}
}