只有ascii字符对CSS样式名称有效

时间:2016-06-14 05:19:18

标签: css css3 validation safari webkit

我在CSS样式名称中查找了哪些字符有效,并找到了一些问题/帖子,例如:

Which characters are valid in CSS class names/selectors?

Can I safely use unicode characters (e.g. accents) in CSS class names or ids?

https://css-tricks.com/unicode-class-names/

所有这些都表明重音和其他unicode字符可以在css样式名称中使用。但是我发现Safari和其他浏览器的不同之处是不同的。 例如使用ØÖÄñ在css样式名称中的字符,Safari不适用于样式,但chrome,firfox,edge do。

然后我用CSS-Validator检查了这些样式名称,它确实给出了错误。

所以我们不能正常使用这些字符,没有unicode转义?只有ascii字符在css样式名称中有效吗?

2 个答案:

答案 0 :(得分:0)


快速回答

  

您应该始终使用UTF-8作为您的样式的字符编码   工作表和HTML页面,并在HTML中声明该编码。如果   你这样做,没有必要声明你的风格的编码   片材。

     

只有样式表包含时才需要其他方法   非ASCII字符,由于某种原因,你不能依赖   HTML的编码和相关的样式表是相同的。在   在这种情况下,您应该使用@charset或HTTP标头来声明   编码。 (如果你的HTML和CSS文件使用相同的编码,那么   主要浏览器的最新版本将应用HTML的编码   将文件复制到CSS样式表。)

参考:https://www.w3.org/International/questions/qa-css-charset

答案 1 :(得分:0)

我可以肯定地说,是的。即使在html创建程序中,如果给对象一个名称包含非ascii字符,如果将HTML部署到某个位置,HTML将无法正常工作。

我是土耳其语,我们有一些非ASCII字符。 出于这个原因,我们看到很多人犯了这个错误。使用这些字符绝不是好事。