我有2種類型的標籤,標準標籤(如第一行)和標籤,其中包含輸入字段。什麼CSS規則可以讓我選擇全部<label>
但排除所有碰巧包含<input>
的標籤?選擇<label>但不包括<label>其中包含<input>
<label for="type">Some Label</label>
<label for="type">
<input type="checkbox" value="1" id="type">Some Label
</label>
我有2種類型的標籤,標準標籤(如第一行)和標籤,其中包含輸入字段。什麼CSS規則可以讓我選擇全部<label>
但排除所有碰巧包含<input>
的標籤?選擇<label>但不包括<label>其中包含<input>
<label for="type">Some Label</label>
<label for="type">
<input type="checkbox" value="1" id="type">Some Label
</label>
這樣做的最好方法是向它們或至少向它們中的一個添加不同的類。
CSS沒有父級選擇器,所以你不能檢查包含其他javascript的元素。
一些背景資料:
CSS selector for "foo that contains bar"?
Is there a CSS parent selector?
CSS Parent/Ancestor Selector
Complex CSS selector for parent of active child
的 「相鄰的兄弟」 選擇應該工作,IF您正在尋找標籤+輸入對:
label+input
{
/* rules */
}
這會忽略你的l基本上是嵌套的輸入,除非在標籤之後碰巧有輸入。
見SitePoint的CSS參考:http://reference.sitepoint.com/css/adjacentsiblingselector
@sameold這個問題,它不是IE6和7兼容。如果這對你來說不是問題,你可以爲所有的標籤定義樣式,並將下一個標籤(緊跟在之前或之前,不包裹)定義爲輸入。 – rcdmk
@rcdmk啊,真的。我已經養成了一種忘記這兩種......壞習慣的壞習慣。 –
所以你有2個班'label'和'標籤換input'吧? –
是的。正如我所說的,你不必創建第二堂課。您可以創建1個課程並將其應用於標籤,而無需輸入。 – rcdmk