我可以让一个模态消失,但我不能让它出现

Posted

技术标签:

【中文标题】我可以让一个模态消失,但我不能让它出现【英文标题】:I can make a modal disappear, but I can't make it appear 【发布时间】:2021-06-23 15:30:13 【问题描述】:

我在 javascript 中有这段代码试图改变 CSS 中的属性“可见性:隐藏;”对于“可见性:无;”只需点击一下按钮

const modal = document.getElementById('modal');
const button = document.getElementById('button');

button.addEventListener('click', function()modal.style.visibility = "none";)

这段代码可以让modal消失,但是不能让它出现

这里是模态 CSS 属性:

#modal
    margin: 5px 20px;
    padding: 20px 20px;
    position: absolute;
    top: 105px;
    right: 5px;
    width: 250px;
    height: 150px;
    background-color: lightgreen;
    border-radius: 10px;
    color: darkgreen;
    align-items: center;
    border: 4px solid darkgreen;
    visibility: hidden;

【问题讨论】:

请添加html 见MDN for the valid values for visibility 【参考方案1】:

可见性有 2 个有效值:

hidden:隐藏元素 visible:显示元素

如果您希望您的元素在点击时出现:您需要更改为使用visible

button.addEventListener('click', function()modal.style.visibility = "visible";)

此外,我建议您改用display 属性:

block: 显示元素 none:隐藏元素

补充阅读:What is the difference between visibility:hidden and display:none?

【讨论】:

以上是关于我可以让一个模态消失,但我不能让它出现的主要内容,如果未能解决你的问题,请参考以下文章

模态表单消失而无需单击表单

bootstrap中的模态框插件,点击遮盖层,模态框不消失,怎么让消失

如何在文本字段单击时弹出 datePicker 并在编辑完成后消失

当我点击它时如何使文本框文本消失

C# 控制器数据到 JavaScript 但是当使用 RETURN JSON 模态消失/成功后刷新 ajax 模态

让按钮消失和重新出现