Cách tạo: Thư viện hình ảnh dạng thẻ

Học cách sử dụng CSS và JavaScript để tạo thư viện hình ảnh dạng thẻ.

Thư viện hình ảnh dạng thẻ

Nhấp vào hình ảnh để mở rộng:

Wuhan
Beijing
Shenzhen
Hangzhou
×

Thử ngay

Tạo thẻ trang thư viện hình ảnh

Bước 1 - Thêm HTML:

<!-- 网格:四列 -->
<div class="row">
  <div class="column">
    <img src="img_nature.jpg" alt="Nature" onclick="myFunction(this);">
  </div>
  <div class="column">
    <img src="img_snow.jpg" alt="Snow" onclick="myFunction(this);">
  </div>
  <div class="column">
    <img src="img_mountains.jpg" alt="Mountains" onclick="myFunction(this);">
  </div>
  <div class="column">
    <img src="img_lights.jpg" alt="Lights" onclick="myFunction(this);">
  </div>
</div>
<!-- 展开的图像容器 -->
<div class="container">
  <!-- 关闭图像 -->
  <span onclick="this.parentElement.style.display='none'" class="closebtn">×</span>
  <!-- 扩展图像 -->
  <img id="expandedImg" style="width:100%">
  <!-- 图像文本 -->
  <div id="imgtext"></div>
</div>

Sử dụng hình ảnh để mở rộng hình ảnh cụ thể. Nhấp vào hình ảnh trong cột sau đó hình ảnh đó sẽ hiển thị trong hộp dưới cột

Bước 2 - Thêm CSS:

Tạo bốn cột và thiết lập樣式 hình ảnh:

/* Lưới: bốn cột song song bằng nhau */
.column {
  float: left;
  width: 25%;
  padding: 10px;
}
/* Thiết lập樣式 hình ảnh trong lưới */
.column img {
  opacity: 0.8;
  cursor: pointer;
}
.column img:hover {
  opacity: 1;
}
/* Xóa nổi sau cột */
.row:after {
  content: "";
  display: table;
  clear: both;
}
/* Hộp hình ảnh mở rộng (cần định vị để đặt nút đóng và văn bản) */
.container {
  position: relative;
  display: none;
}
/* Văn bản hình ảnh mở rộng */
#imgtext {
  position: absolute;
  bottom: 15px;
  left: 15px;
  color: white;
  font-size: 20px;
}
/* Nút đóng trong hình ảnh */
.closebtn {
  position: absolute;
  top: 10px;
  right: 15px;
  color: white;
  font-size: 35px;
  cursor: pointer;
}

Bước 3 - Thêm JavaScript:

function myFunction(imgs) {
  // Lấy hình ảnh mở rộng
  var expandImg = document.getElementById("expandedImg");
  // Lấy văn bản hình ảnh
  var imgText = document.getElementById("imgtext");
  // Sử dụng src của hình ảnh được nhấp từ lưới trong hình ảnh mở rộng
  expandImg.src = imgs.src;
  // Sử dụng giá trị thuộc tính alt của hình ảnh có thể nhấp để làm văn bản trong hình ảnh mở rộng
  imgText.innerHTML = imgs.alt;
  // Hiển thị yếu tố容器 (ẩn bằng CSS)
  expandImg.parentElement.style.display = "block";
}

Thử ngay