代码之家  ›  专栏  ›  技术社区  ›  Ted Scheckler

为什么html复选框总是具有只读属性?

  •  3
  • Ted Scheckler  · 技术社区  · 2 年前

    以下内容将在复选框上方显示十字线:

    input:read-only {
        cursor: crosshair;
    }
    <input type="checkbox">

    为什么会发生这种情况?

    2 回复  |  直到 2 年前
        1
  •  1
  •   Ry- Vincenzo Alcamo    2 年前

    这是什么 the specification 不得不说:

    这个 :read-write pseudo-class必须匹配属于以下类别之一的任何元素,因此出于Selector的目的,这些元素被认为是用户可更改的:[]

    • input 的元素 readonly 属性应用,并且是可变的(即不具有 只读的 指定的属性和未禁用的属性)

    这个 :read-only 伪类必须与所有其他HTML元素匹配。

    只读的 不适用于复选框:

    <label><input type="checkbox" readonly> check this out</label>

    因此,尽管表面上看起来有点奇怪,但它的预期行为: :只读 / :读写 指更具体的可写类型。

        2
  •  1
  •   Johannes    2 年前

    这个 :read-only CSS伪类表示用户不可编辑的元素(如输入或文本区域)。"

    另请参阅 https://developer.mozilla.org/en-US/docs/Web/CSS/:read-only

    复选框在任何状态下都不可编辑。。。