我正忙着在css中使用:before
伪类,尝试插入一个特殊字符,但结果并不是我所希望的。
使用:
.read_more:before {
content: "»";
margin-right: 6px;
}
我得到了我想要的角色,但在它之前使用 字符并使用:
.read_more:before {
content: "»";
margin-right: 6px;
}
我在html页面上获得了完整的»
。
我可以想出几种方法来解决我的问题,但我想知道如果我想使用:before
伪类,正确的语法是什么。
顺便说一句,我的doctype是:
<!doctype html>
<html lang="en">
答案 0 :(得分:47)
试试这个
.read_more:before {
content: "\00BB";
margin-right: 6px;
}
\ 00BB是该角色的unicode表示。它应该合理地工作=)
答案 1 :(得分:19)
答案已被告知,但我想参考:
我在html页面上获得了完整的
»
。
那是因为CSS content
属性不被视为HTML。它不会附加到DOM,因此不会解析任何特定于HTML的标记。您可以直接插入字符:content: "Ԃ";
或使用Unicode表示法:content: "\0504";
。
答案 2 :(得分:14)
尝试指定<meta charset="utf-8">
。理想情况下,您希望在服务器中进行设置。
答案 3 :(得分:7)
我知道问题已经有一段时间了,但是如果有人现在需要它,我找到了解决方案。
Here's包含大量字形的图表。找到你想要的那个并复制它的十六进制代码。
然后粘贴here进行转换。
您将获得如下所示的值:\ 00E1(CSS值)
将此值粘贴到您的内容中:&#39;并高兴:)
答案 4 :(得分:2)
您的浏览器未使用正确的文本编码 - 也就是说,它没有使用与编辑器相同的文本编码。如果从Web服务器接收页面,最好的方法是确保服务器正在发送正确的Content-Type标头。如果您无法控制Web服务器的标头,或者您将使用本地HTML文件进行大量测试,请在文档中添加appropriate tags以获取您正在使用的编码和HTML版本。我建议使用UTF-8。 CSS文件(如果它与HTML分开)应该使用相同的编码。
答案 5 :(得分:1)
在<head>
部分
<meta HTTP-EQUIV="content-type" CONTENT="text/html; charset=UTF-8" />
但如果html页面是用PHP编码的,我更喜欢以下内容:
<?php
header("Content-Encoding: utf-8");
header("Content-type: text/html; charset=utf-8");
?>
不要忘记用UTF-8编码保存任何文件(css,html,php)
答案 6 :(得分:0)
您必须确保所有文件(CSS和HTML)具有相同的编码。