วิธีการสร้าง:งานเสริมที่มีการกรอง

เรียนรู้วิธีการสร้างงานเสริมที่มีการกรอง

งานเสริมของฉัน

กรุณากดปุ่มเพื่อกรองประเภทเฉพาะ:

ภูเขา
ภูเขา

Lorem ipsum dolor..

หนาวคริสต์มาส
แสง

Lorem ipsum dolor..

ธรรมชาติ
ป่า

Lorem ipsum dolor..

รถยนต์
โครงสร้าง

Lorem ipsum dolor..

รถยนต์
รวดเร็ว

Lorem ipsum dolor..

รถยนต์
โรงแรม

Lorem ipsum dolor..

รถยนต์
เด็กหญิง

Lorem ipsum dolor..

รถยนต์
หญิง

Lorem ipsum dolor..

รถยนต์
ชาย

Lorem ipsum dolor..

ลองด้วยตัวเอง

วิธีการสร้างเว็บไซต์งานเสริม

ขั้นที่ 1 - เพิ่ม HTML:

<h2>คู่มืองาน </h2>
<div id="myBtnContainer">
  <button class="btn active" onclick="filterSelection('all')"> แสดงทั้งหมด </button>
  <button class="btn" onclick="filterSelection('nature')"> ธรรมชาติ </button>
  <button class="btn" onclick="filterSelection('cars')"> รถ </button>
  <button class="btn" onclick="filterSelection('people')"> คน </button>
</div>
/* 作品集画廊网格 */
<div class="row">
  <div class="column nature">
    <div class="content">
      <img src="/w3images/mountains.jpg" alt="Mountains" style="width:100%">
      <h4>Mountains</h4>
      <p>Lorem ipsum dolor..</p>
    </div>
  </div>
  <div class="column nature">
    <div class="content">
      <img src="/w3images/lights.jpg" alt="Lights" style="width:100%">
      <h4>Lights</h4>
      <p>Lorem ipsum dolor..</p>
    </div>
  </div>
  <div class="column nature">
    <div class="content">
      <img src="/w3images/nature.jpg" alt="Nature" style="width:100%">
      <h4>Forest</h4>
      <p>Lorem ipsum dolor..</p>
    </div>
  </div>
  <div class="column cars">
    <div class="content">
      <img src="/w3images/cars1.jpg" alt="Car" style="width:100%">
      <h4>Retro</h4>
      <p>Lorem ipsum dolor..</p>
    </div>
  </div>
  <div class="column cars">
    <div class="content">
      <img src="/w3images/cars2.jpg" alt="Car" style="width:100%">
      <h4>Fast</h4>
      <p>Lorem ipsum dolor..</p>
    </div>
  </div>
  <div class="column cars">
    <div class="content">
      <img src="/w3images/cars3.jpg" alt="Car" style="width:100%">
      <h4>Classic</h4>
      <p>Lorem ipsum dolor..</p>
    </div>
  </div>
  <div class="column people">
    <div class="content">
      <img src="/w3images/people1.jpg" alt="People" style="width:100%">
      <h4>Girl</h4>
      <p>Lorem ipsum dolor..</p>
    </div>
  </div>
  <div class="column people">
    <div class="content">
      <img src="/w3images/people2.jpg" alt="People" style="width:100%">
      <h4>Man</h4>
      <p>Lorem ipsum dolor..</p>
    </div>
  </div>
  <div class="column people">
    <div class="content">
      <img src="/w3images/people3.jpg" alt="People" style="width:100%">
      <h4>Woman</h4>
      <p>Lorem ipsum dolor..</p>
    </div>
  </div>
<!-- สิ้นสุดกริด -->
</div>

ขั้นที่ 2 - เพิ่ม CSS:

* {
  box-sizing: border-box;
}
body {
  background-color: #f1f1f1;
  padding: 20px;
  font-family: Arial;
}
/* ศูนย์กลางเว็บไซต์ */
.main {
  max-width: 1000px;
  margin: auto;
}
h1 {
  font-size: 50px;
  word-break: break-all;
}
.row {
  margin: 8px -16px;
}
/* เพิ่มระยะห่างภายในระหว่างคอลัมน์ (ถ้าจำเป็น) */
.row,
.row > .column {
  padding: 8px;
}
/* สร้างคอลัมน์ที่มีขนาดเท่ากันและข้างเคียงกัน */
.column {
  float: left;
  width: 33.33%;
  display: none; /* ซ่อนคอลัมน์โดยมาตรฐาน */
}
/* ล้างการหลุดลงด้านหลังบรรทัด */
.row:after {
  content: "";
  display: table;
  clear: both;
}
/* ข้อมูล */
.content {
  background-color: white;
  padding: 10px;
}
/* คลาส "show" ถูกเพิ่มลงในองค์ประกอบที่ถูกกรอง */
.show {
  display: block;
}
/* กำหนดรูปแบบปุ่ม */
.btn {
  border: none;
  outline: none;
  padding: 12px 16px;
  background-color: white;
  cursor: pointer;
}
/* เพิ่มสีพื้นหลังเงาสีน้ำเงินเมื่อเปลี่ยนหมายเลข */
.btn:hover {
  background-color: #ddd;
}
/* เพิ่มสีพื้นหลังดำสำหรับปุ่มที่กำลังใช้งาน */
.btn.active {
  background-color: #666;
   color: white;
}

ขั้นที่ 3 - กำหนด JavaScript:

filterSelection("all") // ปฏิบัติกระบวนการฟังก์ชันและแสดงคอลัมน์ทั้งหมด
function filterSelection(c) {
  var x, i;
  x = document.getElementsByClassName("column");
  if (c == "all") c = "";
  // ใส่คลาส "show" (display:block) ลงในองค์ประกอบที่เลือกแล้ว และลบคลาส "show" ออกจากองค์ประกอบที่ไม่ถูกเลือก
  for (i = 0; i < x.length; i++) {}}
    w3RemoveClass(x[i], "show");
    if (x[i].className.indexOf(c) > -1) w3AddClass(x[i], "show");
  }
}
// แสดงองค์ประกอบที่เปิดเผย
function w3AddClass(element, name) {
  var i, arr1, arr2;
  arr1 = element.className.split(" ");
  arr2 = name.split(" ");
  for (i = 0; i < arr2.length; i++) {
    if (arr1.indexOf(arr2[i]) == -1) {
      element.className += " " + arr2[i];
    }
  }
}
// ซ่อนองค์ประกอบที่ไม่ได้เลือก
function w3RemoveClass(element, name) {
  var i, arr1, arr2;
  arr1 = element.className.split(" ");
  arr2 = name.split(" ");
  for (i = 0; i < arr2.length; i++) {
    while (arr1.indexOf(arr2[i]) > -1) {
      arr1.splice(arr1.indexOf(arr2[i]), 1);
    }
  }
  element.className = arr1.join(" ");
}
// ใส่คลาสเมื่อกดปุ่มปัจจุบัน (เน้นย้ำมัน)
var btnContainer = document.getElementById("myBtnContainer");
var btns = btnContainer.getElementsByClassName("btn");
for (var i = 0; i < btns.length; i++) {
  btns[i].addEventListener("click", function(){
    var current = document.getElementsByClassName("active");
    current[0].className = current[0].className.replace(" active", "");
    this.className += " active";
  });
}

ลองด้วยตัวเอง

หน้าที่เกี่ยวข้อง

ตัวอย่าง:如何创建作品集图库