我正在尝试为所有在输入字段之前的标签进行样式设置,但不包括复选框和单选按钮。
使用 ~ 选择器,我已经让所有其他类型生效了,但是“文本”输入标签并没有生效,并且我已经盯着它看了很久。
HTML
<form>
<label for="MyText">Text Field</label>
<input id="MyText" type="text" /><br />
<label for="MyUrl">Url Field</label>
<input id="MyUrl" type="url" /><br />
<label for="MyCheck">Checkbox</label>
<input id="MyCheck" type="checkbox" /><br />
</form>
CSS
INPUT:not([type="radio"]):not([type="checkbox"]) ~ LABEL {
width: 100px;
}
INPUT:not([type="radio"]):not([type="checkbox"]) {
width: 200px;
}
LABEL { display: inline-block; }
我希望避免使用ID或类来指定文本输入标签,以保持代码的整洁。这是我的JSFiddle链接:http://jsfiddle.net/buzzsurfr/GWk96/1/。此截图来自JSFiddle,我已在FF和Chrome中测试过。
![Text Input Label is not lined up with one below it (a "url")](https://istack.dev59.com/ceEH4.webp)
~
组合器不会选择前面的元素。 - Yana