ZBLOG

帮我设计一个可以自适应页面的html弹出框,需要美观,并且点击取消阻塞form表单提交

当然!下面是一个简单的示例,展示了如何创建一个自适应页面的HTML弹出框。这个弹出框使用CSS和JavaScript来实现,点击取消按钮时会阻止表单提交。

<!DOCTYPE html>
<html>
<head>
  <style>
    /* 弹出框样式 */
    .modal {
      display: none; /* 默认隐藏 */
      position: fixed;
      z-index: 1;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      overflow: auto;
      background-color: rgba(0,0,0,0.4); /* 半透明背景 */
    }

    .modal-content {
      background-color: #fefefe;
      margin: 10% auto;
      padding: 20px;
      border-radius: 5px;
      box-shadow: 0px 2px 8px rgba(0,0,0,0.3);
    }

    .close {
      color: #aaa;
      float:right;
      font-size:28px;
      font-weight:bold;
    }
    
    .close:hover,
    .close:focus {
        color:#000; 
        text-decoration:none; 
        cursor:pointer; 
     }

     /* 自适应样式 */
     @media only screen and (max-width: 600px) {
        .modal-content {
          width: auto !important;
          max-width: 80%;
        }
     }
   </style>
</head>
<body>

<button id="myBtn">打开弹窗</button>

<div id="myModal" class="modal">
   <div class="modal-content">
     <span class="close">&times;</span>
     <form action="#">
       <!-- 这里放置你的表单内容 -->
       <label for="name">姓名:</label>
       <input type="text" id="name" name="name"><br><br>
       <label for="email">邮箱:</label>
       <input type="text" id="email" name="email"><br><br>
       <button type="submit">提交</button>
     </form>
   </div>
</div>

<script>
// 获取弹出框元素
var modal = document.getElementById("myModal");

// 获取打开弹出框按钮元素
var btn = document.getElementById("myBtn");

// 获取关闭按钮元素
var closeBtn = document.getElementsByClassName("close")[0];

// 当点击打开弹出框按钮时显示弹出框
btn.onclick = function() {
  modal.style.display = "block";
}

// 当点击关闭按钮时隐藏弹出框
closeBtn.onclick = function() {
  modal.style.display = "none";
}

// 当点击模态背景区域时隐藏弹出框
window.onclick = function(event) {
  if (event.target == modal) {
    modal.style.display = "none";
  }
}

// 阻止表单提交事件
modal.getElementsByTagName("form")[0].onsubmit = function(e) {
  e.preventDefault();
}
</script>

</body>
</html>

这个示例中,使用了一个包含自适应样式的CSS,根据屏幕大小来调整弹窗宽度。当点击打开弹窗按钮时,通过设置display: block显示弹窗。点击取消按钮、模态背景区域或者按下ESC键时,通过设置display: none隐藏弹窗。另外,使用了preventDefault()方法来阻止表单的默认提交行为。

你可以根据需要自定义样式和修改表单内容,以满足你的具体需求。希望这能帮到你!如有其他问题,请随时提问。


内容由零声教学AI助手提供,问题来源于学员提问

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://golang.0voice.com/?id=11011

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?