Как сделать - Расширяющуюся сетку
Узнать, как создать расширяющуюся сетку с помощью CSS и JavaScript.
Расширяющаяся сетка
Нажмите на поле, чтобы "развернуть" его (100% ширина):
Бокс 1
Lorem ipsum dolor sit amet, te quo doctus abhorreant, et pri deleniti intellegat, te sanctus inermis ullamcorper nam. Ius error diceret deseruisse ad
Бокс 2
Lorem ipsum dolor sit amet, te quo doctus abhorreant, et pri deleniti intellegat, te sanctus inermis ullamcorper nam. Ius error diceret deseruisse ad
Бокс 3
Lorem ipsum dolor sit amet, te quo doctus abhorreant, et pri deleniti intellegat, te sanctus inermis ullamcorper nam. Ius error diceret deseruisse ad
Создание расширяющейся сетки
Шаг 1) Добавить HTML:
Пример
<!-- Сетка: три колонки -->
<div class="row">
<div class="column" onclick="openTab('b1');" style="background:green;">Бокс 1</div>
<div class="column" onclick="openTab('b2');" style="background:blue;">Бокс 2</div>
<div class="column" onclick="openTab('b3');" style="background:red;">Бокс 3</div>
</div>
<!-- Расширяющаяся сетка (по умолчанию скрыта) -->
<div id="b1" class="containerTab" style="display:none;background:green">
<!-- если вы хотите иметь возможность закрыть контейнер, добавьте кнопку закрыть -->
<span onclick="this.parentElement.style.display='none'" class="closebtn">x</span>
<h2>Бокс 1</h2>
<p>Lorem ipsum..</p>
</div>
<div id="b2" class="containerTab" style="display:none;background:blue">
<span onclick="this.parentElement.style.display='none'" class="closebtn">x</span>
<h2>Бокс 2</h2>
<p>Lorem ipsum..</p>
</div>
<div id="b3" class="containerTab" style="display:none;background:red">
<span onclick="this.parentElement.style.display='none'" class="closebtn">x</span>
<h2>Бокс 3</h2>
<p>Lorem ipsum..</p>
</div>
Шаг 2) Добавить CSS:
Создать три колонки:
Пример
/* Сетка: три одинаковых столбца, которые плавают рядом друг с другом */
.column {
float: left;
width: 33.33%;
padding: 50px;
text-align: center;
font-size: 25px;
cursor: pointer;
color: white;
}
.containerTab {
padding: 20px;
color: white;
}
/* Очистить поплавки после столбцов */
.row:after {
content: "";
display: table;
clear: both;
}
/* Закрываемая кнопка внутри изображения */
.closebtn {
float: right;
color: white;
font-size: 35px;
cursor: pointer;
}
Шаг 3) Добавить JavaScript:
Пример
// Скрыть все элементы с помощью class="containerTab", за исключением того, который соответствует столбцу кликабельной сетки
function openTab(tabName) {
var i, x;
x = document.getElementsByClassName("containerTab");
for (i = 0; i < x.length; i++) {
x[i].style.display = "none";
}
document.getElementById(tabName).style.display = "block";
}
Редактор кода »