我用
sass --watch scss:css
让Sass为每个SCSS文件自动创建CSS文件(并将它们放在
/css
目录中)(来自我的/scss
目录)。在我的SCSS文件中,我有以下内容:
.foo::before {
content: "▶";
}
当我在浏览器中测试网页时,不会显示“播放”字符-而是看到一堆带有纸箱和其他重音的怪异字母。
我检查了生成的CSS文件,并在第一行中注意到了这一点:
@charset "CP852";
然后,我手动将其更改为:
@charset "UTF-8";
导致我的“播放”按钮被正确渲染。
现在,Sass为什么将字符集设置为
"CP852"
?我正在PhpStorm中编写SCSS文件,该文件报告SCSS文件确实是UTF-8编码的(我在PhpStorm的状态栏中看到了该文件)。 最佳答案
尝试将@charset "UTF-8";
添加到原始SCSS文件中,SASS不应覆盖它/然后添加它自己的文件。
关于css - 为什么Sass会添加错误的@charset规则?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10363506/