Как создать: список и сетку

Как создать список и сетку.

Нажмите кнопку, чтобы выбрать список или сетку.

Столбец 1

Некоторый текст...

Столбец 2

Некоторый текст...

Столбец 3

Некоторый текст...

Столбец 4

Некоторый текст...

Список и сетка

Шаг 1 - Добавьте HTML:

<!-- Загрузка библиотеки иконок Font Awesome -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
<!-- Выбор кнопки для списка или сетки -->
<button onclick="listView()"><i class="fa fa-bars"></i> Список</button>
<button onclick="gridView()"><i class="fa fa-th-large"></i> Сетка</button>
<div class="row">
  <div class="column" style="background-color:#aaa;">
    <h2>Столбец 1</h2>
    <p>Некоторый текст...</p>
  </div>
  <div class="column" style="background-color:#bbb;">
    <h2>Столбец 2</h2>
    <p>Некоторый текст...</p>
  </div>
</div>
<div class="row">
  <div class="column" style="background-color:#ccc;">
    <h2>Столбец 3</h2>
    <p>Некоторый текст...</p>
  </div>
  <div class="column" style="background-color:#ddd;">
    <h2>Столбец 4</h2>
    <p>Некоторый текст...</p>
  </div>
</div>

Шаг 2 - Добавить CSS:

/* Создать две колонки одинаковой ширины, которые будут浮动 вместе */
.column {
  float: left;
  width: 50%;
  padding: 10px;
}
/* Удалить浮动 после столбца */
.row:after {
  content: "";
  display: table;
  clear: both;
}

Шаг 3 - Добавить JavaScript:

// Получить элементы с классом "column"
var elements = document.getElementsByClassName("column");
// Объявить переменную цикла
var i;
// Вид списка
function listView() {
  for (i = 0; i < elements.length; i++) {
    elements[i].style.width = "100%"; // Установить ширину каждого элемента в 100%
  }
}
// Вид сетки
function gridView() {
  for (i = 0; i < elements.length; i++) {
    elements[i].style.width = "50%"; // Установить ширину каждого элемента в 50%
  }
}