Hufanya: Gallery ya mafanikio inayofafanua kwenye filter

Mwongozo wa kufanya tovuti ya mafanikio inayofafanua kwenye gallery.

Mafanikio yangu

Tafuta butoni kuuza aina moja:

Nguozi
Nguozi

Lorem ipsum dolor..

Nyota
Vibaradhi

Lorem ipsum dolor..

Natura
Kilima

Lorem ipsum dolor..

Moto
Kiasa

Lorem ipsum dolor..

Moto
Jikuu

Lorem ipsum dolor..

Moto
Kihiki

Lorem ipsum dolor..

Moto
Mwanazuri

Lorem ipsum dolor..

Moto
Mwanamke

Lorem ipsum dolor..

Moto
Mtu

Lorem ipsum dolor..

Jifunze tena

Hufanya tovuti ya mafanikio

Kipindi cha kwanza - Ongeza HTML:

<h2>MAFANIKO</h2>
<div id="myBtnContainer">
  <button class="btn active" onclick="filterSelection('all')"> Onyesha zote</button>
  <button class="btn" onclick="filterSelection('nature')"> Niape</button>
  <button class="btn" onclick="filterSelection('cars')"> Mita</button>
  <button class="btn" onclick="filterSelection('people')"> Watu</button>
</div>
<!-- 作品集画廊网格 -->
<div class="row">
  <div class="column nature">
    <div class="content">
      <img src="/w3images/mountains.jpg" alt="Mountains" style="width:100%">
      <h4>Ukia</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>Lumino</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>Wetani</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>Quick</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>Classik</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>Mwanamke</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>Mradi</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>Mwanawake</h4>
      <p>Lorem ipsum dolor..</p>
    </div>
  </div>
<!-- Kamilika kwa mtandao -->
</div>

Kipindi cha 2 - Ongeza CSS:

* {
  box-sizing: border-box;
}
body {
  background-color: #f1f1f1;
  padding: 20px;
  font-family: Arial;
}
/* kumaliza uwanja wa tovuti */
.main {
  max-width: 1000px;
  margin: auto;
}
h1 {
  font-size: 50px;
  word-break: break-all;
}
.row {
  margin: 8px -16px;
}
/* kuongeza ndoto ya ndani kati ya mitaafiki ya kolona (kama inahitajika) */
.row,
.row > .column {
  padding: 8px;
}
/* kuzengera mitaafiki ya kolona kwenye mabara ya kuzingatia */
.column {
  float: left;
  width: 33.33%;
  display: none; /* kufikia kufichwa kolona kwa chaguo wa kuzingatia */
}
/* kusanya kwenye mabara ya kufikia mabara ya kuzingatia */
.row:after {
  content: "";
  display: table;
  clear: both;
}
/* maudhui */
.content {
  background-color: white;
  padding: 10px;
}
/* "show" kikoo cha rangi kinachotumika kwenye element zilizochaguliwa */
.show {
  display: block;
}
/* kufanya mabara ya kikuu kwa stili */
.btn {
  border: none;
  outline: none;
  padding: 12px 16px;
  background-color: white;
  cursor: pointer;
}
/* kuongeza rangi ya mbali ya miguu ya juu kwenye mabara ya miguu hivi */
.btn:hover {
  background-color: #ddd;
}
/* kuongeza rangi ya mbali ya mabara ya muatili kwa rangi ya miguu ya juu */
.btn.active {
  background-color: #666;
   color: white;
}

mtuki wa tatu - kuongeza JavaScript:

filterSelection("all") // kufanya kazi ya programu na kuonyesha kolona zote
function filterSelection(c) {
  var x, i;
  x = document.getElementsByClassName("column");
  if (c == "all") c = "";
  // kuongeza kikoo cha "show" (display:block) kwenye element zilizochaguliwa, na kichukua "show" kwenye element zilizosubiri
  for (i = 0; i < x.length; i++) {
    w3RemoveClass(x[i], "show");
    if (x[i].className.indexOf(c) > -1) w3AddClass(x[i], "show");
  }
}
// Onyesha elementi zilizotumika
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];
    }
  }
}
// Hifadhi elementi zisizotumika
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(" ");
}
// Kuingiza kiklasifikesheni ya hatua kwenye butoni hili (kutumia mabaya)
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";
  });
}

Jifunze tena

Paeja zaidi

Mafunzo:如何创建作品集图库