我指的是以下文件
http://yabe.ayafish.com/static/stylesheets/crudify.css
如果我直接链接到它,那么下面的代码
.crudSortedAsc:after {
content: 'â–¼';
}
显示为向上箭头。如果我尝试通过 wget 下载它并在本地使用它,则会出现原始文本而不是箭头。如何在本地运行样式表时显示箭头?
我指的是以下文件
http://yabe.ayafish.com/static/stylesheets/crudify.css
如果我直接链接到它,那么下面的代码
.crudSortedAsc:after {
content: 'â–¼';
}
显示为向上箭头。如果我尝试通过 wget 下载它并在本地使用它,则会出现原始文本而不是箭头。如何在本地运行样式表时显示箭头?
添加 @charset "UTF-8";
在你的css文件的顶部。
这是一个编码问题。在途中的某个地方,有些东西不是 UTF8。那个停止是你的问题,修复它,你应该得到你的箭头。
这几乎可以肯定是一个编码问题。
澄清一下,浏览器和 css 文件需要以相同的编码进行通信,否则相同的实体将呈现不同的方式。标准是 utf-8,但重要的问题不是真正使用哪个,而是统一使用。
尝试不同的编辑器。我发现那里的几个编辑器都有这个问题,直到你在服务器上检查 css 后你才意识到字符在那里(在你的编辑器中看不到它。)我使用Aptana,我没有对此没有任何进一步的问题。
当 CSS 文件只包含两个特殊字符时,最简单和最可靠的方法是使用 CSS 转义符号来表示它们。它们独立于字符编码工作。对于“▼”,使用“\25BC”,对于“▲”,使用“\25B2”。
有很多方法可以直接在 CSS 中使用这些字符,但是文件的编码必须是正确的(实际上是 UTF-8),并且必须在 HTTP 标头、@charset
CSS 的规则或引用 CSS 文件的元素的charset
属性。link
你需要确保你的设置没有被覆盖;例如,HTTP 标头会覆盖其他设置。
曾经在我的 css 中使用时髦的字符时遇到过同样的问题,修复它的方法是将样式表重新保存为 UTF8,而不是在记事本 ++ 中保存为“没有 BOM 的 UTF8”,这解决了这个问题。您始终可以尝试在样式表的最顶部定义编码:
@charset "UTF-8";