2010-06-01 53 views
3

我在W3C文檔中找不到任何表示管道字符的東西,|,是不允許的,例如:HTML類中的管道字符

<div class="class1|class2"> 

不要擔心什麼,我可能會使用它。我只是想知道它是否「合法」。

+1

我不知道你的問題的答案。你知道你可以通過空格分隔類名來將多個類應用於一個對象,對吧?如果類別定義在任何地方相互矛盾,則最後一個名稱(即最右邊)優先。 – Hammerite 2010-06-01 22:23:05

+0

就像我說的,不要擔心我在用它。它不是用於應用樣式,而是用於執行動作 – Jason 2010-06-01 22:27:24

回答

2

相關的規則可以在w3c syndata tokenization section發現,雖然這是相當困難的,從那裏得出結論,如果管道是有效還是無效,按一看,似乎什麼是有效的選擇,即:

selector : any+; 
any   : [ IDENT | NUMBER | PERCENTAGE | DIMENSION | STRING 
       | DELIM | URI | HASH | UNICODE-RANGE | INCLUDES 
       | DASHMATCH | ':' | FUNCTION S* any* ')' 
       | '(' S* any* ')' | '[' S* any* ']' ] S*; 
+0

它看起來好像可以使用(即它不是「無效」),但像@marc所說的那樣,它對選擇器不好。這對我來說是好的,因爲我沒有使用它作爲一個:) – Jason 2010-06-01 22:31:32

1

這是合法的HTML,因爲類的數據類型是CDATA。你會遇到CSS選擇器的問題,因爲管道不是選擇器的有效字符。