ЛУЧШИЙ САЙТ ДЛЯ ВЕБ-РАЗРАБОТЧИКОВ

CSS Учебник

CSS Учебник

CSS СТАРТ CSS Введение CSS Синтаксис CSS Селекторы CSS Как подключить CSS Цвета CSS background-color CSS border CSS margin CSS padding CSS height/width CSS Блочная модель CSS Контур CSS Текст CSS Шрифты CSS Иконки CSS Ссылки CSS Списки CSS Таблицы CSS display CSS max-width CSS position CSS overflow CSS float/clear CSS inline-block CSS Выравнивание CSS Комбинаторы CSS Псевдо-классы CSS Псевдо-элементы CSS opacity/transparency CSS Панель навигации CSS Выпадающие списки CSS Галерея изображений CSS Спрайты изображений CSS Селекторы атрибутов CSS Формы CSS Счётчики CSS Макет веб-сайта CSS Единицы CSS Специфичности

CSS Продвинутый

CSS Закругленные углы CSS Границы изображения CSS Фоны CSS Цвета CSS Градиенты CSS Тени CSS Эффекты текста CSS Веб-шрифты CSS 2D Трансформации CSS 3D Трансформации CSS Переходы CSS Анимации CSS Подсказки CSS Стили изображений CSS Подгонка объекта CSS Кнопки CSS Нумерация страниц CSS Несколько столбцов CSS Пользовательский интерфейс CSS Переменные CSS Размеры блоков CSS Флексбокс CSS Медиа-запросы CSS Примеры медиа-запросов

CSS Адаптивный

RWD Введение RWD Область просмотра RWD Вид сетки RWD Медиа-запросы RWD Изображения RWD Видео RWD Фреймворки RWD Шаблоны

CSS Grid (Сетка)

Grid Введение Grid Контейнер Grid Элементы

CSS Примеры

CSS Шаблоны CSS Примеры CSS Викторина CSS Упражнения CSS Сертификат

CSS Справочники

CSS Справочник CSS Селекторы CSS Функции CSS Справочник аудио CSS Безопасные веб-шрифты CSS Анимация CSS Единицы CSS PX-EM Конвертер CSS Цвета CSS Значения цвета CSS Значения по умолчанию CSS Поддержка браузерами

CSS3. Уроки для начинающих

CSS Выпадающие (раскрывающиеся) списки


Создание выпадающего (раскрывающегося) списка с помощью CSS.


Демо: Пример выпадающего списка

Наведите курсор на примеры ниже:


Основной выпадающий (раскрывающийся) список

Создайте раскрывающийся список, который появляется, когда пользователь наводит указатель мыши на элемент.

Пример

<style>
.dropdown {
  position: relative;
  display: inline-block;
}

.dropdown-content {
  display: none;
  position: absolute;
  background-color: #f9f9f9;
  min-width: 160px;
  box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
  padding: 12px 16px;
  z-index: 1;
}

.dropdown:hover .dropdown-content {
  display: block;
}
</style>

<div class="dropdown">
  <span>Mouse over me</span>
  <div class="dropdown-content">
    <p>Hello World!</p>
  </div>
</div>
Попробуйте сами »

Объяснение примера

HTML) Используйте любой элемент, чтобы открыть выпадающий контент, например элемент <span> или <button>.

Используйте элемент контейнера (например, <div>), чтобы создать выпадающий контент и добавить в него все, что вы хотите.

Оберните элемент <div> вокруг элементов, чтобы правильно разместить раскрывающийся контент с помощью CSS.

CSS). Класс .dropdown использует position: relative, который нужен, когда мы хотим, чтобы содержимое раскрывающегося списка размещалось прямо под кнопкой раскрывающегося списка (используя position: absolute).

Класс .dropdown-content содержит фактический раскрывающийся контент. По умолчанию он скрыт и будет отображаться при наведении мыши (см. ниже). Обратите внимание, что для min-width установлено значение 160px. Можете изменить его.

Совет. Если вы хотите, чтобы ширина раскрывающегося содержимого была такой же ширины, как и раскрывающаяся кнопка, установите для width значение 100% (и overflow:auto для включения прокрутки на маленьких экранах).

Вместо использования border мы использовали свойство CSS box-shadow, чтобы раскрывающееся меню выглядело как "карточка".

Селектор :hover используется для отображения раскрывающегося меню, когда пользователь наводит указатель мыши на раскрывающуюся кнопку.


Выпадающее меню

Создайте выпадающее меню, которое позволяет пользователю выбрать опцию из списка:

Этот пример похож на предыдущий, за исключением того, что мы добавляем ссылки в раскрывающемся списке и стилизуем их под стилизованную кнопку раскрывающегося списка:

Пример

<style>
/* Стилизация выпадающей кнопки */
.dropbtn {
  background-color: #4CAF50;
  color: white;
  padding: 16px;
  font-size: 16px;
  border: none;
  cursor: pointer;
}

/* Контейнер <div> - необходимо разместить выпадающий контент */
.dropdown {
  position: relative;
  display: inline-block;
}

/* Выпадающий контент (скрыт по умолчанию) */
.dropdown-content {
  display: none;
  position: absolute;
  background-color: #f9f9f9;
  min-width: 160px;
  box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
  z-index: 1;
}

/* Ссылки внутри выпадающего */
.dropdown-content a {
  color: black;
  padding: 12px 16px;
  text-decoration: none;
  display: block;
}

/* Изменить цвет выпадающих ссылок при наведении */
.dropdown-content a:hover {background-color: #f1f1f1}

/* Показать выпадающее меню при наведении */
.dropdown:hover .dropdown-content {
  display: block;
}

/* Изменить цвет фона кнопки выпадающего списка, когда отображается содержимое выпадающего списка. */
.dropdown:hover .dropbtn {
  background-color: #3e8e41;
}
</style>

<div class="dropdown">
  <button class="dropbtn">Выпадающее меню</button>
  <div class="dropdown-content">
    <a href="#">Ссылка 1</a>
    <a href="#">Ссылка 2</a>
    <a href="#">Ссылка 3</a>
  </div>
</div>
Попробуйте сами »

Выровненный по правому краю выпадающий контент

Если вы хотите, чтобы выпадающее меню перемещалось справа налево, а не слева направо, добавьте right: 0;

Пример

.dropdown-content {
  right: 0;
}
Попробуйте сами »

Больше примеров

Выпадающее изображение

Как добавить изображение и другой контент внутри выпадающего списка.

Наведите курсор на изображение:


Попробуйте сами »

Выпадающий навбар

Как добавить выпадающее меню внутри панели навигации.

Попробуйте сами »