在CSS内容值中放置Unicode字符[重复]

这个问题在这里已经有答案了
使用CSS内容添加HTML实体

(9个答案)

六年前关闭的

我有个问题。我找到了向下箭头的HTML代码,&达尔(↓)

酷。现在我需要在CSS中使用它,如下所示:

nava:hover{content:“&darr”}

这显然是行不通的,因为&达尔是一个HTML符号。关于css中使用的这些“转义unicode”符号的信息似乎较少。我找到了其他符号,如\2020,但没有箭头。箭头代码是什么

为什么不将CSS文件保存/作为UTF-8提供呢

导航a:悬停:之后{
内容:“↓";
}

如果这还不够好,并且您希望保留所有内容:

导航a:悬停:之后{
内容:“\2193”;
}

字符串中Unicode字符的一般格式为\000000\FFFFFF–一个反斜杠,后跟六个十六进制数字。当Unicode字符是字符串中的最后一个字符或在Unicode字符后添加空格时,可以省略前导的0数字。有关详细信息,请参阅下面的规范全部细节


CSS2规范的相关部分:

第三,反斜杠转义允许作者引用他们无法轻松放入文档中的字符。在这种情况下,反斜杠后面最多有六个十六进制数字(0..9A..F),代表带有该数字的ISO10646([ISO10646])字符,该数字不得为零。(CSS 2.1中未定义,如果样式表包含Unicode代码点为零的字符,会发生什么情况。)如果[0-9a-fA-F]范围内的字符跟在十六进制数字后面,则需要明确数字的结尾。有两种方法:

  1. 带有空格(或其他空白字符):“\26 B”(“&B”)。在这种情况下,用户代理应将“CR/LF”对(U+000D/U+000A)视为单个空白字符
  2. 仅提供6个十六进制数字:“\000026B”(“&B”)

事实上,这两种方法可以结合使用。十六进制转义后只忽略一个空格字符。请注意,这意味着转义序列后的“实”空格必须加倍

如果数字超出Unicode允许的范围(例如,“\110000”高于当前Unicode允许的最大10FFFF),UA可以用“替换字符”(U+FFFD)替换转义符。如果要显示字符,UA应该显示一个可见符号,如“缺少字符”字形(参见15.2,第5点)

  • 注意:反斜杠转义总是被认为是标识符或字符串的一部分(即“\7B”不是标点符号,即使“{”是,并且“\32”允许在类名的开头,即使“2”不是)。
    标识符“te\st”与“test”完全相同

综合列表:Unicode字符“向下箭头”(U+2193)

发表评论