当我尝试渲染一个短划线(–
)时,我在我的页面上得到旧的—
。我相信,这可以通过将<meta charset="utf-8">
添加到文档头来清除。但在这种情况下,我通过css插入em dash。
.el:after{
content: "— content to be after";
}
不知何故,它没有被正确编码。 content: "—";
也不起作用;它只呈现amersand代码。我该如何解决这个问题?
答案 0 :(得分:6)
虽然设置正确的编码总是一件好事,但我会尽量避免这种情况,并且只使用HTML,JavaScript和CSS中的ASCII字符:
content:"\2014"
Unicode字符由CSS中的\hexValue
表示。
请注意,如果以下字符为0-9
或a-f
(或A-F
),则会将其视为unicode字符的一部分。您可以在其后面放置一个空格:"\2014 stuff"
,并且不会显示空格(它只标记字符的结尾)。要在它之后放置一个空格,请使用两个空格。
答案 1 :(得分:3)
尝试在样式表
上添加以下内容@charset "UTF-8";
您的HTTP服务器(Apache,Nginx等)可能正在指定不同的字符集。它应该回应:
Content-Type: text/css; charset=UTF-8
有关信息,请参阅http://www.w3.org/