Javascript 完全通过CSS是没有办法做到这一点的吗?

Javascript 完全通过CSS是没有办法做到这一点的吗?,javascript,html,css,forms,checkbox,Javascript,Html,Css,Forms,Checkbox,我有这个CSS规则 input[checked="false"] + label {opacity: .6} 对于此HTML <input type="checkbox" checked="true" name="whatever" value="whatever" id="whatever"> <label for="whatever">Whatever</label> 基本上,我的问题是这是否必要。是否有方法仅通过CSS根据其复选框的选中或未选中状态更

我有这个CSS规则

input[checked="false"] + label {opacity: .6}
对于此HTML

<input type="checkbox" checked="true" name="whatever" value="whatever" id="whatever">
<label for="whatever">Whatever</label>
基本上,我的问题是这是否必要。是否有方法仅通过CSS根据其复选框的选中或未选中状态更改标签的样式?

存在,但在Internet Explorer(至少版本8及以下)上不起作用


false
不是选中的
的有效值。它要么在HTML中被选中
,要么在XHTML中被选中true和
false
都是布尔值。这是有道理的,但即使我只是简单地使用了
checked
,取消选中该框也不会删除HTML属性,所以问题仍然存在。呃,站着,因为idealmachine提到了
:checked
伪类。
document.getElementById('whatever').addEventListener('change', toggleChecked, false);
function toggleChecked() {
    this.setAttribute('checked', this.checked);
}
input:checked + label {opacity: .6}