Как создать: большое меню
- Предыдущая страница Сверху меню
- Следующая страница Мобильное меню
Узнайте, как создать большое меню (полностью шириной в навигационной панели, выпадающее меню).
Большое меню
Создание большого меню
Создайте выпадающее меню, которое отображается, когда пользователь наводит курсор на элемент в навигационной панели.
Шаг 1 - Добавьте HTML:
<div class="navbar"> <a href="#home">Home</a> <a href="#news">News</a> <div class="dropdown"> <button class="dropbtn">Dropdown <i class="fa fa-caret-down"></i> </button> <div class="dropdown-content"> <div class="header"> <h2>Mega Menu</h2> </div> <div class="row"> <div class="column"> <h3>Category 1</h3> <a href="#">Ссылка 1</a> <a href="#">Ссылка 2</a> <a href="#">Ссылка 3</a> </div> <div class="column"> <h3>Category 2</h3> <a href="#">Ссылка 1</a> <a href="#">Ссылка 2</a> <a href="#">Ссылка 3</a> </div> <div class="column"> <h3>Категория 3</h3> <a href="#">Ссылка 1</a> <a href="#">Ссылка 2</a> <a href="#">Ссылка 3</a> </div> </div> </div> </div> </div>
Пример объяснение:
Вы можете использовать любой элемент для открытия выпадающего меню, например, элемент <button>, <a> или <p>.
Используйте элемент контейнера (например, <div class="dropdown-content">) для создания выпадающего меню, добавьте сетку (строки), затем добавьте ссылки в сетку.
Используйте элемент <div class="dropdown"> для обертывания кнопки и элементов контейнера (например, <div class="dropdown-content">), чтобы точно определить положение выпадающего меню с помощью CSS.
Шаг 2 - Добавьте CSS:
/* Контейнер навигационной панели */ .navbar { overflow: hidden; background-color: #333; font-family: Arial; } /* Ссылки в навигационной панели */ .navbar a { float: left; font-size: 16px; color: white; text-align: center; padding: 14px 16px; text-decoration: none; } /* Контейнер выпадающего меню */ .dropdown { float: left; overflow: hidden; } /* Кнопка выпадающего меню */ .dropdown .dropbtn { font-size: 16px; border: none; outline: none; color: white; padding: 14px 16px; background-color: inherit; font: inherit; /* Важно для вертикального выравнивания на мобильных устройствах */ margin: 0; /* Важно для вертикального выравнивания на мобильных устройствах */ } /* Добавление красного фона для ссылок в навигационной панели при наведении мыши */ .navbar a:hover, .dropdown:hover .dropbtn { background-color: red; } /* Содержимое выпадающего списка (по умолчанию скрыто) */ .dropdown-content { display: none; position: absolute; background-color: #f9f9f9; width: 100%; left: 0; box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2); z-index: 1; } /* Большие заголовки меню (если необходимо) */ .dropdown-content .header { background: red; padding: 16px; color: white; } /* Отображает выпадающее меню при наведении мыши */ .dropdown:hover .dropdown-content { display: block; } /* Создает три одинаковых по ширине колонки и делает их параллельно浮动 */ .column { float: left; width: 33.33%; padding: 10px; background-color: #ccc; height: 250px; } /* Устанавливает стили для ссылок в колонках */ .column a { float: none; color: black; padding: 16px; text-decoration: none; display: block; text-align: left; } /* Добавляет фоновый цвет при наведении мыши */ .column a:hover { background-color: #ddd; } /* Убирает浮动 после колонок */ .row:after { content: ""; display: table; clear: both; }
Пример объяснение:
Мы установили фоновый цвет, отступы и другие стили для навигационной панели и ссылок на навигационной панели.
Мы установили фоновый цвет, отступы и другие стили для кнопки меню выпадающего меню.
.dropdown-content
класс содержит фактическое выпадающее меню. По умолчанию он скрыт и отображается при наведении мыши (см. ниже). Он расположен под кнопкой меню и его ширина установлена в 100%, чтобы покрыть весь экран.
Мы не используем рамку, а используем box-shadow
делает выпадающее меню выглядеть как "карточка". Мы также используем Атрибут z-index
Разместить выпадающее меню перед другими элементами.
:hover
Выборщик используется для отображения выпадающего меню при наведении мыши на кнопку меню.
.column
Класс используется для создания трех параллельно浮动ных колонок в выпадающем меню (для отображения различных категорий).
Респонсивное большое меню
/* Респонсивная компоновка - делает три колонки堆积在一起, а не параллельно */ @media screen and (max-width: 600px) { .column { width: 100%; height: auto; } }
Соответствующие страницы
- Предыдущая страница Сверху меню
- Следующая страница Мобильное меню