我已经在 Windows 10 上使用 Scout-App 和 Visual Studio Code 测试了这个问题。
刚刚下载Font-Awesome 4.7.0 SCSS files并设置一个项目/工作区,我注意到 unicode 输出有问题。例如:
在“_variables.scss”部分,我们有:
$fa-css-prefix: fa;
$fa-var-music: "\f001";
在“_icons.scss”部分,我们有:
.#{$fa-css-prefix}-music:before { content: $fa-var-music; }
预期结果为:
.fa-music:before { content: "\f001"; }
但输出是:
.fa-music:before { content: ""; }
因此所有存储在变量中的unicode值都被处理为
因此我无法为修改后的超赞字体 CSS 文件正确编译正确的输出。
我已经尝试在每个 SCSS 文件的顶部放置 UTF8 编码,但问题仍未解决。
对于快速测试,这将产生描述的结果:
test.scss
@charset "UTF-8";
$fa-css-prefix: fa;
$fa-var-music: "\f001";
.#{$fa-css-prefix}-music:before { content: $fa-var-music; }
最佳答案
似乎是这样写的:
"\f0a9" ,
Scout 将编译 unicode 字符。
但是,如果你使用插值:
#{'"' + \f0a9 + '"'}
然后 Scout 将编译为“\f0a9”。
你也可以使用像这样的变量
$escaped: \f0aa;
...
#{'"' + $escaped + '"'}
或:
$escaped: f0aa;
...
#{'"\\' + $escaped + '"'}
备注:
- 编译后的 unicode 字符可能会在内容属性中成为浏览器的问题。因此你想给他写的十六进制代码。
- 如果您弄乱了反斜杠和插值,另请参阅此处: Sass variable interpolation with backslash in output
关于unicode - SCSS 处理器 Unicode 输出不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59471552/