css点击文字显示弹窗

2023-12-29 18:00:19 举报文章

在网页设计中,弹窗(Modal)是非常常见的交互方式。CSS可以实现通过点击文字来显示弹窗效果。本文将介绍使用CSS实现这种交互的方法。

//CSS代码
.modal {
  
  display: none;
  
  position: fixed;
  
  z-index: 1;
  
  padding-top: 100px;
  
  left: 0;
  
  top: 0;
  
  width: 100%;
  
  height: 100%;
  
  overflow: auto;
  
  background-color: rgba(0, 0, 0, 0.4);
}
.modal-content {
  
  background-color: #fefefe;
  
  margin: auto;
  
  padding: 20px;
  
  border: 1px solid #888;
  
  width: 80%;
}
.close {
  
  color: #aaa;
  
  float: right;
  
  font-size: 28px;
  
  font-weight: bold;
}
.close:hover,
.close:focus {
  
  color: black;
  
  text-decoration: none;
  
  cursor: pointer;
}
 

上面的CSS代码用于定义弹窗的样式。其中.modal定义了弹窗的样式,.modal-content定义了弹窗中内容的样式,.close定义了用于关闭弹窗的样式。

//HTML代码
<p>点击下面的文字来显示弹窗:</p>
<p class="clickable">弹出一个弹窗</p>
<div id="modal" class="modal">
  
  <div class="modal-content">
  
   
   <span class="close">×
</span>
  
   
   <p>这是一个弹窗。</p>
  
  </div>
</div> 

上面的HTML代码中,首先定义了一个可点击的文字,通过添加clickable类来实现样式。接着定义了一个弹窗,其中包含.modal类来应用样式,弹窗中的内容定义在.modal-content中。

//JavaScript代码
var modal = document.getElementById("modal");
var clickable = document.getElementsByClassName("clickable")[0];
var close = document.getElementsByClassName("close")[0];
clickable.onclick = function() {
  
  modal.style.display = "block";
}
close.onclick = function() {
  
  modal.style.display = "none";
}
window.onclick = function(event) {
  
  if (event.target == modal) {
  
   
   modal.style.display = "none";
  
}
}
 

最后,JavaScript代码实现了点击文字来显示弹窗的功能,以及通过点击弹窗外部区域或关闭按钮来关闭弹窗的功能。可以将上面的代码添加到