有人可能會使用一個CSS選擇器如a[href^="http:"], a[href^="mailto:"]
匹配文檔中的所有外部和郵件鏈接,但有使用像這樣選擇的報價段內的一個「或」聲明的方式: a[href^="(http|mailto):"]
?或聲明
或聲明
回答
據我所知,有沒有辦法做到你的要求。在CSS選擇器規範中,管道字符用於與屬性選擇器一起使用時有所不同。它用作名稱空間分隔符。
每對W3C選擇規格:
在屬性選擇屬性名稱是作爲一個CSS 限定名:先前已宣佈 可以被前置到屬性名稱的命名空間前綴由名稱空間 分隔符「垂直條」(|)分隔。爲了與 XML建議中的名稱空間保持一致,默認名稱空間不適用於屬性 因此,沒有名稱空間組件的屬性選擇器僅將 應用於沒有名稱空間的屬性(相當於「| attr」;這些屬性被稱爲 位於「每個元素類型名稱空間 分區」)。星號可用於指示選擇是不 關於屬性的名稱空間匹配的所有屬性名稱的命名空間前綴 。
CSS examples:
@namespace foo "http://www.example.com";
[foo|att=val] { color: blue }
[*|att] { color: yellow }
[|att] { color: green }
[att] { color: green }
的第一條規則將匹配僅與具有值「VAL」的 「http://www.example.com」命名空間屬性ATT元件。
第二條規則將匹配只與ATT 屬性不論屬性(包括沒有命名空間)的命名空間的元素。
最後兩個規則是等價的,只會匹配與 屬性ATT其中屬性是不是在一個命名空間的元素。
還有['[att | = val]'](http://www.w3。org/TR/selectors /#attribute-representation),一個屬性選擇器,它與屬性匹配,或者完全是'val'或者是一個以'val-'爲前綴的值,但是與名稱空間前綴一樣,它不提供被請求的功能。 – BoltClock
我檢查CSS選擇器語法,但似乎這樣做是逗號分隔的唯一途徑:
selectors_group
: selector [ COMMA S* selector ]*
而且,這些都是一些相關詞彙規則:
{w}"+" return PLUS;
{w}">" return GREATER;
{w}"," return COMMA;
{w}"~" return TILDE;
有沒有和也不OR規則,但有一兩件事我注意到的是,他們有否定:
"{N}{O}{T}"(" return NOT;)
符號是組合符(除''''外)。否定只是指':not()'僞類,所以它沒有什麼特別之處。 – BoltClock
@BoltClock:我知道沒有什麼特別之處,我只是提到了一些我在css選擇器規範中找到的東西(相關的對象)。我應該刪除我的答案嗎? –
- 1. 「或」聲明 - ORMLite
- 2. PHP或聲明||
- 3. MySQL或聲明
- 4. AWK或聲明
- 5. 聲明或不聲明在目標c
- 6. $或聲明在$ elemMatch
- 7. 簡單或聲明
- 8. MongoDB的$或聲明
- 9. laravel Blade {{}}或{!! !!}聲明
- 10. SQL或AND聲明
- 11. 「聲明或聲明」Angular2(或TypeScript)中的錯誤
- 12. 或聲明的方法
- 13. 谷歌表IF或聲明
- 14. 爪哇 - 多或聲明
- 15. 或PHP中的聲明
- 16. 或聲明/條件開始
- 17. 如果聲明與或
- 18. 或聲明無效語法
- 19. 關閉聲明;或不?
- 20. VB.net如果或聲明
- 21. MySQL - 加入或聲明?
- 22. JavaScript數組聲明或
- 23. 更有效或聲明
- 24. Jquery tmpl創建或聲明
- 25. 函數或實例聲明?
- 26. 輸入結束時的預期聲明或聲明C
- 27. 將IBOutlet放入實例變量聲明或@property聲明中?
- 28. Node.js:全局聲明node_modules,或根據需要本地聲明node_jodules?
- 29. 輸入結束時的預期聲明或聲明 - 錯誤
- 30. 「聲明或聲明的預期」([email protected] build C:\ ..)
你提到的第一個選擇將你想要做什麼... – sevenseacat
@sevenseacat:這不就是他說? – BoltClock