這個問題已經存在: 我可以使用 CSS 同級選擇來選擇帶有鏈接的標簽,該鏈接跟在帶有影像的標簽之后嗎?[復制] 1 小時前關閉。
我試圖定位一個只出現在影像之后的鏈接,但它們位于單獨的標簽中,如下所示:
<p>
<a href=whatever>
<img stuff>
</a>
</p>
<p>
<a href=something>This should be a different color</a>
這個“作品”:
p p>a {
color: red;
}
但這有點不具體。我想做這樣的事情,但我認為它在尋找 IMAGE 的兄弟姐妹而不是 PARAGRAPH 當我這樣做時:
p>a>img p>a {
color:red
}
所以第一個例子有效,但可能會觸發我不想要的東西。第二個根本不起作用,也許它不能。我很想使用類或 id,但這是在一個使用 Markdown 的專案中,它被翻譯成 HTML。我必須定位元素的唯一方法是通過一般結構而不是屬性(除非您知道另一種方法?)
uj5u.com熱心網友回復:
了解瀏覽器從左到右匹配選擇器可能會有所幫助,有時自己以這種方式閱讀可能會有所幫助。另外,請記住,您的間距意味著 CSS 不關心的分組。
因此,如果我們從右到左閱讀它,我們會發現這p p>a將被理解為“一個段落內的錨點,而該段落本身緊挨著另一個段落”。
另一方面,p>a>img p>a將被解讀為“段落內的錨點,它本身就在段落內錨點內的影像旁邊。” 通過在選擇器之間留出空格,>您就暗示了一個不存在的分組。所以這實際上會像這樣匹配:
<p>
<a>
<img/>
<p>
<a>THIS HERE IS WHAT IS TARGETED</a>
</p>
</a>
</p>
顯然這種結構是荒謬的,但你明白我希望定位的作業方式。有沒有辦法穿越回了到父(沒有<選擇),也不是你組選擇可以喜歡(p>a>img) (p>a),所以很遺憾你想在這里選擇的方法是不可行的/可能。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/325177.html
