less变量如何随屏幕宽度变化?
@xw: 10vw;
@media screen and (min-width: 1000px) {
@xw: 20px;
}
.test {
font-size: @xw;
}
譬如这样怎么写才能使得变量@xw可以根据屏幕宽度变化,想把这个xw当作一个全局的基准值来使用,但是像上述那样写无论什么宽度都只会是10vw。
回复
1个回答

test
2024-07-16
不管是 Less
还是 Scss
或者 Stylus
,他们的变量都在被编译成CSS的时候就消失了。变成一个固定的CSS属性值。这些CSS预处理器并不会在客户端运行,所以也就是我们为什么会把他们放到 开发依赖 当中。
如果你想要在浏览器环境按照不同业务场景去变更的话,可以使用 CSS 变量。只要你提前定义好上就可以去随时修改和使用它(JS来控制需要放在 body
的行内样式中)。
例如说你的需求
:root{
--xw: 10vw;
}
@media (min-width: 1000px){
body{
--xw: 20px;
}
}
.test{
font-size: var(--xw)
}
回复

适合作为回答的
- 经过验证的有效解决办法
- 自己的经验指引,对解决问题有帮助
- 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
- 询问内容细节或回复楼层
- 与题目无关的内容
- “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容