HTML input的readonly属性在CSS中的伪类?样式化只读输入框 顺亿 2026-11-15 • 👁 0人浏览过 :read-only仅匹配(文本类type)和,不匹配、或contenteditable元素;只认DOM中真实存在的readonly布尔属性,JS赋值el.readOnly=true无效,须用setAttribute('readonly', '')。 复制:read-only 是唯一对应 复制readonly 属性的 CSS 伪类,但它只对原生支持该属性的表单控件生效,且行为比你想象中更“较真”。 哪些元素能真正匹配 复制:read-only 只有两类元素会被识别: 复制 ,但必须是文本类类型(如 复制type="text" 、 复制type="email" 、 复制type="number" ), 复制type="checkbox" 、 复制type="hidden" 、 复制type="range" 都不匹配 复制 —— 常被遗漏,但它完全支持 复制 、 复制 、 复制 即使手动加了 复制readonly 属性,浏览器也直接忽略, 复制:read-only 永远不会命中。 复制:read-only 生效的硬性条件 它不看 JS 赋值,只认 DOM 属性是否真实存在: 立即学习 “ 前端免费学习笔记(深入) ”; 必须用布尔写法: 复制 或 复制el.setAttribute('readonly', '') ;写成 复制readonly="false" 或 复制readonly="disabled" 都算“存在”,照样匹配 复制el.readOnly = true 不足以触发样式,除非同时调用 复制el.setAttribute('readonly', '') 移除时必须用 复制el.removeAttribute('readonly') ,仅设 复制el.readOnly = false 不会清除样式 DevTools 里检查 Elements 面板,确认 复制readonly 字样确实出现在标签上,而不是只在 JS 里赋值了。 使用HTML,CSS,JavaScript开发Android应用程序 英文文字pdf版附源文件 如果你了解HTML,CSS和JavaScript,您已经拥有所需的工具开发Android应用程序。本动手本书展示了如何使用这些开源web标准设计和建造,可适应任何Android设备的应用程序 - 无需使用Java。您将学习如何创建一个在您选择的平台的Android友好的网络应用程序,然后转换与自由PhoneGap框架到一个原生的Android应用程序。了解为什么设备无关的移动应用是未来的潮流,并开始构建应用程序,提供更 下载 和 复制[readonly] 属性选择器的区别 两者常被混用,但机制完全不同: 复制input[readonly] :只要 HTML 属性存在就匹配,不管值是什么,也不管元素是否真的可编辑 复制input:read-only :由浏览器根据当前状态判定,JS 执行 复制el.readOnly = false 后样式立刻失效 优先级上 复制:read-only > 复制[readonly] ,但没必要共存;若需兼容旧版 Firefox,得补 复制input:-moz-read-only ,IE 则只能退回到 复制[readonly] 真正容易被忽略的是:伪类只是样式钩子,不控制行为——用户仍可聚焦、选中、右键粘贴,禁用这些得靠额外监听或 复制tabindex="-1" + 复制user-select: none 。 和 复制:disabled 混用时的视觉陷阱 如果一个 复制 ,它同时满足两个伪类,但结果不是叠加,而是覆盖: 复制:disabled 样式一定胜出,哪怕你把 复制:read-only 写在后面 灰色文字、无边框、 复制opacity 降低等效果会盖掉你为 复制:read-only 设的浅灰背景或锁图标 语义上二者冲突: 复制readonly 表示“值要提交、可复制”, 复制disabled 表示“彻底不参与表单”,别为了“看起来更禁用”而同时加 实际项目里, 复制:read-only 最适合做轻量级状态提示,比如加 复制cursor: not-allowed 和 复制background-color: #f5f5f5 ,但别指望它替你做交互拦截或兼容兜底。 ‹ 上一篇 CSS字体属性font: 14px/20px到底是什么意思? 下一篇 html5嵌入页面缓存不刷新_html5嵌入页缓存清除法【方案】 › 相关文章 CSS字体属性font: 14px/20px到底是什么意思? 2026-11-15 快速掌握静态相对定位的技巧与方法 2026-11-15 JQuery中DOM事件冒泡实例分析_jquery 2026-11-15 nodejs生产环境部署vue 2026-11-15 html怎么运行script_html中运行script脚本方法【教程】 2026-11-15 hbuilder如何运行html_HBuilder开发工具HTML调试与运行方法 2026-11-15 html5嵌入页面缓存不刷新_html5嵌入页缓存清除法【方案】 2026-11-15 如何给网页的body设置CSS样式? 2026-11-15 Electron渲染进程与WebView如何实现高效同步交互? 2026-11-15 Mongoose updateOne 深度解析:处理复杂字段与鉴别器更新策略 2026-11-15