回答
TLDR:行情是必需的,除非該值滿足identifier specification for CSS2.1
CSS規範可能會說它們是可選的,但現實世界中呈現出不同的故事。在對href屬性進行比較時,您需要使用引號(在我非常有限的測試中進行單項或雙項工作 - FF,IE,Chrome的最新版本。)
有趣的是@Pekka引用的CSS規範鏈接發生在他們的href特定示例中使用引號。
它不僅僅是由於像句點或斜槓這樣的非字母字符給這個獨特的情況一個報價要求 - 使用部分匹配選擇器〜=不起作用,如果你只是在「域」中使用「域」 .com「
好吧,這裏的每個答案都是錯誤的(包括我自己以前的答案)。CSS2規範沒有說明是否需要引號在選擇器部分本身,但CSS3規範確實並引用規則爲一個CSS21實現:
http://www.w3.org/TR/css3-selectors/
屬性值必須是CSS標識符或字符串。 [CSS21]選擇器中屬性名稱和值的區分大小寫取決於文檔語言。
這裏是標識符信息:
http://www.w3.org/TR/CSS21/syndata.html#value-def-identifier
在CSS中,標識符(包括元素名,類和在選擇器的ID)可以只包含字符[ a-zA-Z0-9]和ISO 10646字符U + 00A0及更高版本加上連字符( - )和下劃線(_);他們不能以數字,兩個連字符或連字符後跟數字開頭。標識符也可以包含轉義字符和任何ISO 10646字符作爲數字代碼(參見下一項)。例如,標識符「B & W?」可寫成「B \ & W \?」或「B \ 26 W \ 3F」。
我的回答似乎是正確的,但那是因爲「〜=」是一種白色空間選擇比較所以它永遠不會匹配一個href值內的部分字符串。然而'* ='比較器可以工作。像'域'這樣的部分字符串可以用於匹配href ='www.domain.com'。但檢查完整的域名將不起作用,因爲它違反了標識符規則。
不,他們不必爲了避免含糊不清而引用強詞,許多人使用引號,如果該值包含空格,則需要引號。
無論是單引號還是雙引號都可以,並且整數將以相同方式處理(css沒有區分字符串和整數)。
請參閱the spec中的示例。
這個答案並不完全正確......看到這個小提琴---> https://jsfiddle.net/k6avfo7k/。使用屬性和屬性選擇器的各種組合(^ =,$ =,| =,=,* =),您將看到CSS以例如[name $ = 1]打破,但在[name $ =「1 「] – 2017-09-12 13:22:32
他們不需要被引用。
字符串/雙打/整數也沒有區別。 CSS isn't Turing-complete,更不用說輸入了。
未加引號的值必須以字母開頭。 – 2014-06-29 14:33:42
看到我對Pekka的答案的評論。 – 2014-06-29 17:03:59
這個答案並不完全正確......看到這個小提琴---> https://jsfiddle.net/k6avfo7k/。使用屬性和屬性選擇器的各種組合(^ =,$ =,| =,=,* =),您將看到CSS以例如[name $ = 1]打破,但在[name $ =「1 「] – 2017-09-12 13:22:55
根據CSS 2.1 specs中的示例,引號是可選的。
在下面的例子中,選擇所有SPAN元件,其「class」屬性恰好具有值「例如」匹配:
span[class=example] { color: blue; }
在此,選擇所有SPAN元件,其匹配「你好」屬性正好有值「克利夫蘭」和他的「再見」屬性具有完全相同的價值「哥倫布」:
span[hello="Cleveland"][goodbye="Columbus"] { color: blue; }
數字被當作字符串,即次埃可以被引用,但他們不需要。
啊..正在閱讀css3規範,我看到的所有示例都使用了引號。 – mpen 2010-10-03 19:04:28
未加引號的值必須以字母開頭。 – 2014-06-29 14:34:09
@DaveSchweisguth'[引用需要]' – 2014-06-29 16:50:34
- 1. 從XML列中選擇屬性值時,是否需要/ text()?
- 2. 是否不再需要用HTML引用HTML5中的屬性值?
- 3. CSS [屬性| =值] VS [屬性* =值]選擇
- 4. 使用CSS屬性中包含多個值的選擇器
- 5. 選擇器需要可繪製屬性?
- 6. 是否jQuery的。不是()方法需要CSS選擇器
- 7. CSS - 如何選擇多個屬性值?
- 8. 是否可以引用屬性值?
- 9. 從屬性選擇器中提取值
- 10. 如何正確轉義css/js屬性選擇器中的屬性值[attr = value]?
- 11. 需要取決於屬性值的值
- 12. 如何使用css選擇器提取屬性值?
- 13. 設置屬性值時是否需要使用臨時變量?
- 14. JSF/CSS屬性選擇器
- 15. 需要一個值屬性
- 16. 空值需要XML屬性
- 17. 需要查找屬性值
- 18. 選擇BypassPrepare屬性的值
- 19. MongoDB選擇器是否需要驗證?
- 20. jQuery屬性選擇器其中值包含數組中的值
- 21. QT CSS中的屬性選擇器
- 22. CSS選擇/轉換屬性值似乎是錯的
- 23. ObservableCollection中的屬性是否需要PropertyChangedEvent
- 24. Spotfire:需要選擇多選列表框中的所有值文檔屬性
- 25. '未選擇'屬性值在下拉框中選擇的值
- 26. kineticjs是否提供屬性選擇器?
- 27. JQuery按屬性值選擇器?
- 28. 自定義屬性值jQuery選擇器
- 29. jquery選擇器:屬性值以
- 30. 使用xpath從內聯樣式中選擇css屬性值
Hrm ...很奇怪。我不知道這是爲什麼? – mpen 2011-09-02 20:35:13