Всем привет!
Еще упустил довольно таки интересный тег «details».
С помощью этого тега вы сможете сделать свёртывание и развертывание содержания (спойлер) без использования дополнительных стилей CSS или скриптов Javascript.
Итак, чтобы создать простейший спойлер, вставьте вот такой HTML код:
<details> <p>Содержание спойлера</p> </details>
Результат:
Содержание спойлера
Замете, что заголовок «Подробнее» выставляется по умолчанию, если не применить тег для заголовка «summary»:
<details> <summary>Мой заголовок</summary> <p>Содержание спойлера</p> </details>
Результат:
Мой заголовок
Содержание спойлера
Если нужно, чтобы какой-то из спойлеров был открыт, допишите к тегу «details» атрибут «open»:
<details open> <summary>Мой заголовок 1</summary> <p>Содержание спойлера 1</p> </details> <details> <summary>Мой заголовок 2</summary> <p>Содержание спойлера 2</p> </details>
Результат:
Мой заголовок 1
Содержание спойлера 1
Мой заголовок 2
Содержание спойлера 2
Для красоты можно оформить и CSS стили.
Добавьте вот такой HTML код:
<details> <summary>Мой заголовок 1</summary> <p>Содержание спойлера 1</p> </details> <details> <summary>Мой заголовок 2</summary> <p>Содержание спойлера 2</p> </details> <details> <summary>Мой заголовок 3</summary> <p>Содержание спойлера 3</p> </details>
Теперь CSS:
details {
border: 1px solid #999;
border-radius: 5px;
margin: 0 2em .4em 2em;
padding: 1.04%;
}
details {
margin: 1em;
cursor: pointer;
}
summary {
border-radius: 5px;
cursor: pointer;
margin: -1%;
padding: 8px 10px;
background: -webkit-linear-gradient(top, #f3f3f3 50%, #e6e6e6 50%);
}
Результат:
Мой заголовок 1
Содержание спойлера 1
Мой заголовок 2
Содержание спойлера 2
Мой заголовок 3
Содержание спойлера 3
Также, можно заменить значок тега details (треугольник) своим, используя CSS.
Спецсимволы вы можете посмотреть тут.
Итак, добавьте CSS стиль
/* Chrome, Opera, Safari */
details summary::-webkit-details-marker {
display: none;
}
/* Firefox */
details, summary {
display: block;
}
details summary:before {
content: " + ";
}
details[open] summary:before {
content: " - ";
}
Я думаю, на этой ноте можно закончить статью.
Удачи!
Понравился пост? Помоги другим узнать об этой статье, кликни на кнопку социальных сетей ↓↓↓
Последние новости категории:
Похожие статьи
Популярные статьи:
-
Как узнать id компьютера
Дата: 29 марта 2013
Прокомментировано:90
просмотров: 330348 -
Размеры форматов листов А0 – А7
Дата: 23 января 2013
Прокомментировано:3
просмотров: 274701 -
Смешные логические загадки с подвохом, отгадки прилагаются
Дата: 12 ноября 2014
Прокомментировано:5
просмотров: 222536 -
Готовые макеты блоков для веб-страниц на HTML и CSS
Дата: 25 июня 2014
Прокомментировано:23
просмотров: 187748 -
Установка windows 7 на ноутбук
Дата: 18 декабря 2012
Прокомментировано:169
просмотров: 186564
10 Ответов на комментарий - Полезный тег «details» в HTML5 для создания спойлера
Добавить комментарий
Метки: html, Вебмастеру, для сайта


Мое первое приложение для смартфонов (андроид) – основы HTML
События HTML5
Скрипт для выпадающего списка
Перетаскивание изображения – использование Drag and Drop в html 5
Готовый скрипт выбора валют на сайте (курс валют)
Проверка заполнения полей формы с помощью jQuery
Как убрать полосу прокрутки с помощью CSS

Спасибо. Пригодилось!
Пожалуйста!
Спасибо за блог!
У меня ещё есть вопрос, как вставлять CSS в html код? Сам пока не разобрался.
Пожалуйста, Андрей! Как подключить CSS и методы подключения в html код Вы найдете вот в этом уроке:
/css-osnovi-primer-podskazki/kak-podklyuchit-css-metody-i-sposoby-podklyuchenij.html/
Здравствуйте! У меня вопрос: Есть ли возможность сделать изображение спойлером?
Здравствуйте! А что мешает вместо “Мой заголовок” вставить код картинки?
Добрый день. Подскажите пожалуйста, как сделать так, что-бы при нажатии на другой спойлер, предыдущий скрывался? И как плавность хода добавить?) Спасибо большое за ответ!
Здравствуйте, Владислав!
Вот CSS:
h2 { color: #002850; font-size: 30px; font-weight: normal; padding: 45px 0 15px;cursor:pointer; } .accordion { border: 1px solid #ddd; border-top: none; margin: 10px 0; float: left; width: 470px; position: relative; } .accordion a { display: block; text-decoration: none; } .accordion h2, .accordion a{ background-color: #fff; background-image: url(gradient.jpg); background-image: -moz-linear-gradient(bottom, #f1f1f1, #fff); background-image: -ms-linear-gradient(bottom, #f1f1f1, #fff); background-image: -o-linear-gradient(bottom, #f1f1f1, #fff); background-image: -webkit-linear-gradient(bottom, #f1f1f1, #fff); background-image: linear-gradient(bottom, #f1f1f1, #fff); border-top: 1px solid #ddd; color: #222; font: 14px/30px 'Verdana', sans-serif; height: 30px; margin: 0; padding: 0; text-indent: 10px; } p { color: #555; font: 12px/18px 'Verdana', sans-serif; padding: 20px 10px; } a[href^="#accordion"] + *{display: none;} #accordion-css3 :target{display: block;}HTML:
<div id="accordion-css3" class="accordion"> <a href="#accordion-1">Заголовок 1</a> <p id="accordion-1">Здесь находится контент...</p> <a href="#accordion-2">Заголовок 2</a> <p id="accordion-2">Здесь находится контент...</p> <a href="#accordion-3">Заголовок 3</a> <div id="accordion-3"> <p>Здесь находится контент...</p> </div> </div>Здравствуйте ,Степан! Большое спасибо за коды, мне пригодились. Не подскажете код сворачивания спойлера? У меня длинный текст, который удобнее свернуть в конце, а не перекручивать на начало.
Здравствуйте, Екатерина.
Посмотрите вот тут: /effekty-dlya-sajta-2/kak-sozdat-spojler-dlya-sajta.html/