我有一个表格有4个选项(他们可能是复选框或收音机)。
我想选择多个选项,但一个是强制性的。
我知道这是可能的JS / jQuery,但我想要一个HTML / CSS基础解决方案。
解决方法
为了能够检查多个输入,它们必须是复选框。 (他们可以是具有不同名称的单选按钮,但是一旦检查,您将无法取消选中它们。)
所以使用复选框,只有当选中了提交按钮时才使用general sibling selector(〜):
input[type="Submit"] { display: none; } input:checked ~ input[type="Submit"] { display: inline; }
<input id="c1" type="checkBox"><label for="c1">First</label><br> <input id="c2" type="checkBox"><label for="c2">Second</label><br> <input id="c3" type="checkBox"><label for="c3">Third</label><br> <input id="c4" type="checkBox"><label for="c4">Fourth</label><br> <input type="Submit">
如果您想要禁用提交按钮的外观,请添加禁用的第二个按钮。
当没有单击输入时,仅显示已禁用的提交按钮。单击一个或多个输入时,仅显示启用的提交按钮:
input[type="Submit"]:not([disabled]) { display: none; } input:checked ~ input[type="Submit"]:not([disabled]) { display: inline; } input:checked ~ input[disabled] { display: none; }
<input id="c1" type="checkBox"><label for="c1">First</label><br> <input id="c2" type="checkBox"><label for="c2">Second</label><br> <input id="c3" type="checkBox"><label for="c3">Third</label><br> <input id="c4" type="checkBox"><label for="c4">Fourth</label><br> <input type="Submit" disabled> <input type="Submit">