Comment créer : Vue en liste et en grille

Comment créer une vue en liste et en grille.

Cliquez sur le bouton pour choisir la vue en liste ou en grille.

Colonne 1

Certains textes...

Colonne 2

Certains textes...

Colonne 3

Certains textes...

Colonne 4

Certains textes...

Essayer par vous-même

Vue en liste et en grille

Étape 1 - Ajouter HTML :

<!-- Chargement de la bibliothèque d'icônes Font Awesome -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
Bouton utilisé pour choisir la vue en liste ou en grille
<button onclick="listView()"><i class="fa fa-bars"></i> List</button>
<button onclick="gridView()"><i class="fa fa-th-large"></i> Grid</button>
<div class="row">
  <div class="column" style="background-color:#aaa;">
    <h2>Column 1</h2>
    <p>Some text..</p>
  </div>
  <div class="column" style="background-color:#bbb;">
    <h2>Column 2</h2>
    <p>Some text..</p>
  </div>
</div>
<div class="row">
  <div class="column" style="background-color:#ccc;">
    <h2>Column 3</h2>
    <p>Some text..</p>
  </div>
  <div class="column" style="background-color:#ddd;">
    <h2>Column 4</h2>
    <p>Some text..</p>
  </div>
</div>

Deuxième étape - Ajouter CSS :

/* Créer deux colonnes égales qui flottent ensemble */
.column {
  float: left;
  width: 50%;
  padding: 10px;
}
/* Supprimer le flot après les colonnes */
.row:after {
  content: "";
  display: table;
  clear: both;
}

Troisième étape - Ajouter JavaScript :

// Obtenir les éléments de la classe "column"
var elements = document.getElementsByClassName("column");
// Déclarer une variable de boucle
var i;
// Vue en liste
function listView() {
  for (i = 0; i < elements.length; i++) {
    elements[i].style.width = "100%"; // Définir la largeur de chaque élément à 100%
  }
}
// Vue en grille
function gridView() {
  for (i = 0; i < elements.length; i++) {
    elements[i].style.width = "50%"; // Définir la largeur de chaque élément à 50%
  }
}

Essayer par vous-même