I am trying to use sass variables and sass mathematical operator to define different css font-size
variables.
I defined css variables like that:
$base-font-size: 1rem;
:root {
--font-size-s: #{$base-font-size} * 0.5;
--font-size-m: #{$base-font-size};
--font-size-l: #{$base-font-size} * 2;
}
Then in other file I used my css variable like that:
p {
font-size: var(--font-size-l);
}
This doesn't work at all my font size doesn't change at all. I thought that maybe there is something wrong with sass mathematical operators, so I tried something like that:
p {
font-size: 1rem * 2;
}
This worked and my font size was equal 2rem
as expected. After this discovery I thought that maybe I am doing something wrong with sass variables so changed my css variables to that:
:root {
--font-size-s: 1rem * 0.5;
--font-size-m: 1rem;
--font-size-l: 1rem * 2;
}
And this doesn't work! I really do not know what I am doing wrong. Can someone explain to me how should I define those css variables with sass variables and sass mathematical operators?
Notes:
calc
function this will work too::root {
--font-size-s: calc(#{$base-font-size} * 0.5);
--font-size-m: #{$base-font-size};
--font-size-l: calc(#{$base-font-size} * 2);
}
.scss
files I am using Webpack 5.10.3 with css-loader and sass-loaderYou need to evalute all the expression like below:
$base-font-size: 1rem;
:root {
--font-size-s: #{$base-font-size * 0.5};
--font-size-m: #{$base-font-size};
--font-size-l: #{$base-font-size * 2};
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With