You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何HTML复选框始终具备read-only属性?样式生效原因解析

问题解答

一、为什么HTML复选框会被识别为具有read-only属性?

HTML规范明确规定,复选框(<input type="checkbox">)和单选按钮这类开关型表单控件本身不支持readonly属性——手动给它们添加readonly属性不会产生任何效果,用户依然能正常切换选中状态。

如果你的代码里发现:read-only伪类匹配到了复选框,这是浏览器实现的差异问题:部分浏览器对:read-only伪类的判定逻辑没有严格区分“不支持readonly属性的控件”,错误地把未禁用的复选框归为了“只读”范畴,导致伪类规则被触发。

二、复选框上方显示十字光标的原因

你的CSS规则 input:read-only { cursor: crosshair; } 会给所有被:read-only伪类匹配到的输入框设置十字光标。如果复选框显示了这个光标,说明当前浏览器把这个复选框判定为:read-only状态,从而触发了该样式规则。

本质上还是浏览器对:read-only伪类的实现偏差,把本不该匹配的复选框纳入了规则范围。


内容的提问来源于stack exchange,提问作者Ted Scheckler

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 05:10:57