【发布时间】:2021-12-24 01:12:21
【问题描述】:
我的 HTML 文件的正文标记中有以下隐藏的 <p> 元素(用于我的 chrome 扩展名)。
<p hidden id="button">
<a id="dashboard-btn" href="www.google.com" target="_blank" rel="noopener noreferrer">
www.google.com
</a>
</p>
我想使用 JavaScript 取消隐藏它。我的随机尝试未能取消隐藏它:
document.getElementById("button").style.visibility = 'visible';
[已解决]这(也)有效:
document.getElementById("button").style.display = "block";
【问题讨论】:
-
为什么不用
display: none隐藏并用display: block取消隐藏?或使用element.removeAttribute(attrName)? -
@tacoshy 为什么要移除属性而不是使用隐藏属性的属性?
-
@SimoneRossaini,如果我们将 display none 替换为 visibility hidden,那么我们可以做出漂亮的过渡。直接或通过设置器更改属性并没有太大区别。但我直接认为,就像你提到的那样是一种更干净的方式
-
在使用 html 的 20 多年中,我从未见过在野外使用的
hiddenhtml 属性。我不知道它的存在。阅读MDN 让我考虑使用它,而不是我当前使用display: none创建名为“隐藏”的类并根据需要添加或删除该类的方法。对此有何建议? -
@RobMoll,我认为这更多是关于语义以及是否要将元素从隐藏状态设置为可见,或者不。
标签: javascript html google-chrome-extension hide show-hide