14

我用

sass --watch scss:css

/css让 Sass为每个 SCSS 文件(来自我的目录)自动创建 CSS 文件(并将它们放在目录中/scss)。

在我的 SCSS 文件中,我有这个:

.foo::before {
    content: "▶";
}

当我在浏览器中测试网页时,没有显示“播放”字符 - 相反,我看到一堆带有卡隆和其他口音的奇怪字母。

我检查了生成的 CSS 文件,并在第一行注意到了这一点:

@charset "CP852";

然后我手动将其更改为:

@charset "UTF-8";

这导致我的“播放”按钮被正确呈现。

现在,为什么 Sass 将字符集设置为"CP852"?我在 PhpStorm 中编写 SCSS 文件,它报告 SCSS 文件确实是 UTF-8 编码的(我在 PhpStorm 的状态栏中看到)。

4

2 回答 2

31

尝试添加@charset "UTF-8";到您的原始 SCSS 文件,SASS 不应该覆盖它/然后添加它自己的。

于 2012-05-15T01:46:47.123 回答
5

就像这个答案中的@Alireza-Fatahi 状态一样,您可以在 CSS 输出中保存一行,而是在外部文件上使用默认字符集,方法是将此行添加到您config.rb的项目文件夹中:

Encoding.default_external = "UTF-8"
于 2014-06-17T18:32:25.677 回答