چگونه ایجاد می‌شود: کتابخانه تصاویر برگه‌ای

آموزش نحوه استفاده از CSS و JavaScript برای ایجاد کتابخانه تصاویر برگه‌ای.

کتابخانه تصاویر برگه‌ای

برای باز کردن تصویر کلیک کنید:

ووهان
پکن
شنزن
هانگژو
×

تست کنید

ایجاد گالری برگه

قدم اول - اضافه کردن 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>

از عکس برای گسترش عکس خاص استفاده کنید. پس از کلیک بر روی عکس در ستون، این عکس در جعبه زیر ستون نمایش داده می‌شود.

مرحله دوم - اضافه کردن CSS:

ایجاد چهار ستون و تنظیم استایل عکس:

/* شبکه: چهار ستون برابر و عمودی */
.column {
  float: left;
  width: 25%;
  padding: 10px;
}
/* تنظیمات استایل برای عکس‌های داخل شبکه */
.column img {
  opacity: 0.8;
  cursor: pointer;
}
.column img:hover {
  opacity: 1;
}
/* پاکسازی شناور پس از ستون */
.row:after {
  content: "";
  display: table;
  clear: both;
}
/* جعبه نمایش گسترش‌یافته عکس (نیاز به موقعیت برای قرار دادن دکمه بستن و متن دارد) */
.container {
  position: relative;
  display: none;
}
/* متن عکس گسترش‌یافته */
#imgtext {
  position: absolute;
  bottom: 15px;
  left: 15px;
  color: white;
  font-size: 20px;
}
/* دکمه قابل بستن در داخل عکس */
.closebtn {
  position: absolute;
  top: 10px;
  right: 15px;
  color: white;
  font-size: 35px;
  cursor: pointer;
}

مرحله سوم - اضافه کردن JavaScript:

function myFunction(imgs) {
  // برای دریافت عکس گسترش‌یافته استفاده می‌شود
  var expandImg = document.getElementById("expandedImg");
  // برای دریافت متن عکس استفاده می‌شود
  var imgText = document.getElementById("imgtext");
  // در عکس گسترش‌یافته از همان src که از عکس کلیک شده استفاده می‌شود
  expandImg.src = imgs.src;
  // مقدار属性 alt عکس قابل کلیک را به عنوان متن عکس گسترش‌یافته استفاده می‌کند
  imgText.innerHTML = imgs.alt;
  // نمایش عنصر جعبه نمایش (با استفاده از CSS پنهان شده)
  expandImg.parentElement.style.display = "block";
}

تست کنید