2017-09-23 87 views
0

我遇到问题,当我的Sass编译我的.scss文件时。看来,Sass编译«特殊字符,并将其转换为另一个┬½。但我想保留我的«在我的.css文件中。Sass编译和转换特殊字符

有没有人知道如何解决这个问题? 或者,也许谁知道如何问Sass不编译特定行?

这里是我的scss代码:

/* SCSS file sample */ 
&::before{ 
    content: "«"; 
} 

&::after{ 
    content: "»"; 
} 

在这里,它是如何编译它:

/* Compiled CSS */ 
.textBox--quotation::before { 
    content: "«"; 
} 
.textBox--quotation::after { 
    content: "┬╗"; 
} 

谢谢您的帮助。

+0

你用什么编译器?我想这是你的编译器的一个特定问题。 [这一个](https://jsfiddle.net/2u43fhuo/)的作品。以及[this](https://www.sassmeister.com)。 – voloshin

+0

我正在使用Sass 3.5.1(Bleeding Edge) – Pilou

+0

非常奇怪的行为。因为我之前用'gulp-sass'和'compass.app'来做同样的事情很多次,而且都是完美的。也许,你使用非'utf8'字符编码? – voloshin

回答

1

使用CSS相当于你的特殊字符:

\00AB (按转化here

div:after { 
 
    content: "\00AB"; 
 
}
<div>hello </div>

+1

不错!谢谢。它完美的作品。 :) – Pilou

0

我可以在Windows萨斯3.5.1(前沿证实了这一点)。

当文件编码为UTF-8 with BOM时,这种情况不会发生。只有当文件编码没有BOM(这基本上意味着,你编码UTF-8,但你没有告诉任何人)。我的猜测是:Sass会将文件解析为普通的ANSI,从而看到这两个字符。

有趣的事情:当文件与BOM编码,青菜中删除,并添加注释 @charset "UTF-8"; 没关系,它总是这个