【问题标题】:I have a "label" tag inside a "summary" tag. It is not opening the details when clicked on label. How to solve?我在“摘要”标签中有一个“标签”标签。单击标签时不会打开详细信息。怎么解决?
【发布时间】:2020-09-12 20:28:34
【问题描述】:

我已经检查了this 的问题。没有答案,this 也有问题。但我的问题在这里略有不同。我只是在summary 中添加另一个元素,然后单击它不会打开details。当我在label 外部单击时,即仅在summary 上有效。

这是我的代码:

<form action="#" id="">
        <details>
            <summary>
                <label>Filter 1</label>
            </summary>
            <div class="filter-1">
                <input type="checkbox" name="filter-1" value="a">A <br>
                <input type="checkbox" name="filter-1" value="b">B
            </div>
        </details>
    </form>

我基本上是想在details - summary 标签中显示或隐藏一些输入。

注意:- 类和名称属性就在那里。没有代码。

预期的解决方案:

点击摘要标签内的任何内容将打开详细信息。 提前致谢

【问题讨论】:

  • 您的代码正在运行jsfiddle.net/37tpfka8
  • 标签标签不工作,但 div 和 span 标签工作。我已经测试过了。单击标签标签本身,您会注意到它。但Vaibhav 的解决方案有效。

标签: html details-tag summary-tag


【解决方案1】:

label 元素阻止点击summary。将pointer-events: none; 添加到标签或您放入summary 中的任何元素。

label {
  pointer-events: none;
}
<form action="#" id="">
  <details>
    <summary>
      <label>Filter 1</label>
    </summary>
    <div class="filter-1">
      <input type="checkbox" name="filter-1" value="a">A <br>
      <input type="checkbox" name="filter-1" value="b">B
    </div>
  </details>
</form>

【讨论】:

  • 感谢您的回答,它成功了!我有另一种方法来处理这个问题,通过使用 div 或 span 并且它可以工作。有没有想过这种行为??
猜你喜欢
  • 1970-01-01
  • 2021-10-09
  • 2013-11-07
  • 2017-08-17
  • 1970-01-01
  • 2021-12-27
  • 2014-05-03
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多