Html меню горизонтальное выпадающее: Горизонтальное выпадающее меню
Содержание
Как сделать в css выпадающее меню? Пошаговая инструкция
От автора: всех приветствую. Почему-то выпадающее меню у веб-мастеров ассоциируется со скриптами, но уже давно сделать такую навигацию можно абсолютно спокойно на чистом css. Причем такое меню будет ничем не хуже. Сегодня я вам покажу, как создать в css выпадающее меню. Поделюсь, так сказать, рецептом.
План урока и разметка нашего меню
В общем-то, сначала определимся с тем, как будем создавать само меню. В html5 стандартным способом считается создавать его в контейнере nav с помощью маркированного списка. Давайте именно так и сделаем. Маркеры мы позже уберем с помощью css, в меню они нам совершенно не нужны.
Собственно, я сразу напишу в html разметку с вложенными списками. То есть наши список будет двухуровневым – в нем будут другие списки. А именно, на каждый пункт 1 список, который и будет формировать выпадающее меню.
Тут есть важный момент, который заключается в том, что вам, возможно, не нужно каждый пункт делать выпадающим, а лишь некоторые. Без проблем, тогда в пунктах без выпадения просто не создаем вложенных списков.
Собственно, вот она, вся разметка:
Практический курс по верстке адаптивного сайта с нуля!
Изучите курс и узнайте, как верстать современные сайты на HTML5 и CSS3
Узнать подробнее
<nav id = «nav»>
<ul>
<li><a href = «#»>Пункт 1</a>
<ul class = «second»>
<li><a href = «#»>Подпункт</a></li>
<li><a href = «#»>Подпункт</a></li>
<li><a href = «#»>Подпункт</a></li>
</ul>
</li>
<li><a href = «#»>Пункт 2</a>
<ul class = «second»>
<li><a href = «#»>Подпункт</a></li>
<li><a href = «#»>Подпункт</a></li>
<li><a href = «#»>Подпункт</a></li>
</ul>
</li>
<li><a href = «#»>Пункт 3</a>
<ul class = «second»>
<li><a href = «#»>Подпункт</a></li>
<li><a href = «#»>Подпункт</a></li>
<li><a href = «#»>Подпункт</a></li>
</ul>
</li>
<li><a href = «#»>Пункт 4</a>
<ul class = «second»>
<li><a href = «#»>Подпункт</a></li>
<li><a href = «#»>Подпункт</a></li>
<li><a href = «#»>Подпункт</a></li>
</ul>
</li>
</ul>
</nav>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | <nav id = «nav»> <ul> <li><a href = «#»>Пункт 1</a> <ul class = «second»> <li><a href = «#»>Подпункт</a></li> <li><a href = «#»>Подпункт</a></li> <li><a href = «#»>Подпункт</a></li> </ul> </li> <li><a href = «#»>Пункт 2</a> <ul class = «second»> <li><a href = «#»>Подпункт</a></li> <li><a href = «#»>Подпункт</a></li> <li><a href = «#»>Подпункт</a></li> </ul> </li> <li><a href = «#»>Пункт 3</a> <ul class = «second»> <li><a href = «#»>Подпункт</a></li> <li><a href = «#»>Подпункт</a></li> <li><a href = «#»>Подпункт</a></li> </ul> </li> <li><a href = «#»>Пункт 4</a> <ul class = «second»> <li><a href = «#»>Подпункт</a></li> <li><a href = «#»>Подпункт</a></li> <li><a href = «#»>Подпункт</a></li> </ul> </li> </ul> </nav> |
Я понимаю, что она огромна. В этом-то и проблема вложенных списков, что требуется писать много кода. Но учитывайте тот факт, что мы делаем 4 основных пункта и для каждого будет выпадающее меню.
Собственно, я задал всей навигации идентификатор nav, а всем вложенным спискам – стилевой класс second, чтобы понимать, что они являются вложенными.
Отлично, разметка у нас готова, можно посмотреть на результат:
Да уж, выглядит ужасно. Но сейчас мы включим в работу css и уже через несколько минут наша навигация преобразится. Давайте работать.
Пишем css-стили
Первое, что я сделаю, это сброшу все отступы по умолчанию для всех элементов. Они нам будут только мешать, лучше зададим потом отступы сами, где это понадобится.
*{
margin: 0;
padding: 0;
}
*{ margin: 0; padding: 0; } |
Далее я пропишу общие стили для самого меню, а также для списков, чтобы убрать у них маркеры.
#nav{
height: 70px;
}
#nav ul{
list-style: none;
}
#nav{ height: 70px; } #nav ul{ list-style: none; } |
Теперь нам нужно, собственно, решить, каким будет наше меню. Горизонтальным или вертикальным? Я предлагаю сначала сделать горизонтальное и посмотреть все на его примере. Для этого нужно написать такие стили:
#nav > ul > li{
float: left;
width: 180px;
position: relative;
}
#nav > ul > li{ float: left; width: 180px; position: relative; } |
Заметьте, что с помощью знака > мы обращаемся к пунктам списка, который непосредственно вложены в ul, а тот непосредственно вложен в nav. Это очень важно, так как позволяет не применить стиль к пунктам вложенных списков. Дело в том, что по моей задумке в главном списке пункты будут располагаться горизонтально, а во вложенных – вертикально.
Но вы, конечно, можете делать по-другому, в согласии со своей задумкой. Вы можете сделать так, чтобы все пункты были в одну строчку.
В любом случае, вышеприведенный код, я надеюсь, вы понимаете. Он заставляет пункты главного списка прижиматься к левому краю, так что все они встают в одну строку, хотя и являются блочными элементами. Также я задал им явную ширину и относительное позиционирование.
Для чего позиционирование? Оно необходимо для того, чтобы потом абсолютно позиционировать вложенные списки. Если вы изучали позиционирование в css, то наверняка знаете, что если задать блоку относительное позиционирование, то все элементы в нем можно будет позиционировать абсолютно внутри именно этого блока, а не всего окна браузера.
Тем временем, вот что у нас уже получилось:
По этому скриншоту вы можете уже представить себе примерный результат. Конечно, нам еще предстоит красиво оформить пункты, чтобы глаза не умоляли о пощаде при просмотре навигации.
Далее мы с вами преобразим внешний вид нашего меню. Вот такие стили для этого я прописал ссылкам:
#nav li a{
display: block;
background: #90DA93;
border: 1px solid #060A13;
color: #060A13;
padding: 8px;
text-align: center;
text-decoration: none;
}
#nav li a:hover{
background: #2F718E;
}
#nav li a{ display: block; background: #90DA93; border: 1px solid #060A13; color: #060A13; padding: 8px; text-align: center; text-decoration: none; } #nav li a:hover{ background: #2F718E; } |
Во-первых, сами ссылки нужно сделать блочными. Это необходимо для того, чтобы работали внутренние отступы и корректно применялись все свойства. Далее указываю цвета фона, текста, параметры рамки, внутренние отступы и выравнивание текста по центру. Наконец, отменяю подчеркивание ссылок.
Все эти параметры не обязательно прописывать так, как это сделал я. Цвета вы можете выбрать произвольно, рамку сделать другую или вообще не использовать, отступы можно уменьшать или увеличивать.
Заметьте, что в данном случае мы не использовали знак >, поэтому указанные правила применятся ко всем ссылкам, в том числе и тем, что находятся во вложенных пунктах. Итак, теперь имеем следующее:
Отлично, но ведь вы понимаете, что подпункты не должны быть видно, они должны раскрываться при наведении на нужный пункт. Без этого наше меню похоже на таблицу. Что ж, самое время спрятать вложенные пункты.
#nav li .second{
display: none;
position: absolute;
top: 100%;
}
#nav li .second{ display: none; position: absolute; top: 100%; } |
Практический курс по верстке адаптивного сайта с нуля!
Изучите курс и узнайте, как верстать современные сайты на HTML5 и CSS3
Узнать подробнее
Во-первых, скрываем полностью вложенные списки. Во-вторых, задаем им абсолютное позиционирование и координату top: 100%. Это означает, что выпадающее меню будет отображаться четко под основным пунктом, которому принадлежит, четко под 100% высоты этого пункта.
Теперь мы видим на веб-странице только основное меню, что нам и нужно.
Реализуем выпадение
Нам осталось сделать самое главное – реализовать само выпадение. В этом нет ничего сложного, смотрите на этот код:
#nav li:hover .second{
display: block;
}
#nav li:hover .second{ display: block; } |
Этот код будет работать безукоризненно. При наведении на пункт основного меню, вложенный список будет становиться видимым. Причем только тот список, что вложен в пункт, на который наводится курсор.
Есть только одна незначительная проблема – ширина вложенных пунктов не соответствует ширине основных. Но это очень легко решается дописыванием соответствующих стилей:
#nav li li{
width: 180px;
}
#nav li li{ width: 180px; } |
Все, проблема решена:
Все работает отлично. При наведении на основной пункт появляется соответствующее ему выпадающее меню. Если убрать курсор в сторону – оно пропадает. Если перевести курсор на сами вложенные пункты, то можно будет по ним кликнуть и перейти в нужный раздел сайта. Таким образом, мы сделали с вами очень простое и легкое выпадающее меню абсолютно без скриптов.
Переделываем меню в вертикальное
Ну хорошо, с горизонтальной навигацией мы с вами полностью разобрались, но ведь помимо нее на сайтах очень часто встречается и вертикальная и она тоже может быть выпадающей. На самом деле переделать меню с горизонтального на вертикальное очень легко, нам придется изменить буквально пару строк кода.
Во-первых, вам нужно будет убрать float:left у главных пунктов списка. Именно это свойство способствует тому, что наши пункты отображаются в одну строку, но зачем нам это, если навигация должна быть вертикальной?
Теперь остается изменить правила для селектора #nav li .second, то есть для вложенных списков, а именно, их нужно немного по-другому позиционировать. Вот так:
#nav li .second{
display: none;
position: absolute;
left: 100%;
top: 0;
}
#nav li .second{ display: none; position: absolute; left: 100%; top: 0; } |
То есть необходимо прописать две координаты вместо одной. Во-первых, в случае с горизонтальной навигацией я говорил, что по задумке пункты вложенных меню должны отображаться под основными пунктами. В случае с вертикальным меню это не подходит – пункты должны отображаться сбоку.
Поэтому изменяем top: 100% на left: 100%. Кроме этого, координата top нам тоже нужна. Задаем ей 0, чтобы вложенное меню находилось на одном уровне с пунктом, которому соответствуют.
Все, теперь все работает так, как надо. Можете протестировать. Как видите, я не врал, когда говорил, что придется переписать всего несколько строк кода.
Горизонтальное меню с несколькими уровнями
Используя примерно такой же подход вы можете создать больше уровней меню, если это сильно необходимо. Например, давайте создадим для четвертого пункта главного меню список, который будет вложен в один из подпунктов.
<li><a href = «#»>Пункт 4</a>
<ul class = «second»>
<li><a href = «#»>Подпункт</a>
<ul class = «third»>
<li><a href = «#»>Подпункт подпункта</a></li>
<li><a href = «#»>Подпункт подпункта</a></li>
</ul>
</li>
<li><a href = «#»>Подпункт</a></li>
<li><a href = «#»>Подпункт</a></li>
</ul>
</li>
<li><a href = «#»>Пункт 4</a> <ul class = «second»> <li><a href = «#»>Подпункт</a> <ul class = «third»> <li><a href = «#»>Подпункт подпункта</a></li> <li><a href = «#»>Подпункт подпункта</a></li> </ul> </li> <li><a href = «#»>Подпункт</a></li> <li><a href = «#»>Подпункт</a></li> </ul> </li> |
Опять же, разметка превращается в громоздкую и непонятную, но если вы будете внимательным, то увидите, в чем здесь вся суть. Далее работаем с css:
#nav li li .third{
display: none;
position: absolute;
left: 100%;
top: 0;
}
#nav li li:hover .third{
display: block;
}
#nav li li .third{ display: none; position: absolute; left: 100%; top: 0; } #nav li li:hover .third{ display: block; } |
Соответственно, убираем вложенное меню третьего уровня с экрана, делаем ему абсолютное позиционирование и прописываем такие координаты, как в случае с вертикальным меню. То есть данный список будет отображаться при наведении на первый подпункт четвертого пункта и будет отображаться сбоку.
Внимание! Чтобы абсолютное позиционирование работало для списка third, у списков second должно быть задано относительное позиционирование. Но как, если мы же задавали для него абсолютное позиционирование?
Что ж, если вам нужно меню трех уровней, то придется убирать у second абсолютное позиционирование, а у главных пунктов убирать относительное. Вся фишка в том, что в случае с горизонтальным меню это никак не повлияет на отображение навигации – подпункты по-прежнему будут располагаться под главным пунктом при наведении на него.
Зато после этих изменений вы сможете добавить меню для каждого подпункта. Опять же, необязательно оно должно отображаться сбоку, это всего лишь моя идея, вы можете отображать его под подпунктом при наведении на него. Тогда вообще никакого позиционирования не понадобится!
В общем, итог таков:
При наведении на пункт 4 появляется первое выпадающее меню, при наведении на первый подпункт появляется отдельное меню для него, которое расположено сбоку. У других подпунктов такое меню не отображается, так как мы не создавали его в html-разметке.
Я думаю, вам понятно общая концепция. Если вы смогли разобраться, то уже самостоятельно сможете создать нужное вам выпадающее меню и самостоятельно решить проблемы, если это возможно в рамках css.
Итог
В общем, вам главное понять, как правильно позиционировать вложенное меню, а также как непосредственно реализовывается выпадение. Надеюсь, из этой статьи вы это поняли и теперь самостоятельно на чистом css сможете делать такую навигацию. Мы с вами узнали, как сделать выпадающее меню.
Много других очень интересных возможностей css вы можете узнать в нашем премиум-курсе по новым фишкам css3. Там вы научитесь делать градиенты, работать с новыми селекторами, создавать тени и т.д. Если вам нравится css, то точно понравится эта серия уроков. Ну а я на этом прощаюсь с вами.
Практический курс по верстке адаптивного сайта с нуля!
Изучите курс и узнайте, как верстать современные сайты на HTML5 и CSS3
Узнать подробнее
PSD to HTML
Верстка сайта на HTML5 и CSS3 с нуля
Смотреть
Горизонтальное выпадающее меню.
.cbp-hrmenu {
width: 100%;
margin-top: 2em;
border-bottom: 4px solid #47a3da;
}
/* general ul style */
.cbp-hrmenu ul {
margin: 0;
padding: 0;
list-style-type: none;
}
/* first level ul style */
. cbp-hrmenu > ul,
.cbp-hrmenu .cbp-hrsub-inner {
width: 90%;
max-width: 70em;
margin: 0 auto;
padding: 0 1.875em;
}
.cbp-hrmenu > ul > li {
display: inline-block;
}
.cbp-hrmenu > ul > li > a {
font-weight: 700;
padding: 1em 2em;
color: #999;
display: inline-block;
}
.cbp-hrmenu > ul > li > a:hover {
color: #47a3da;
}
.cbp-hrmenu > ul > li.cbp-hropen a,
.cbp-hrmenu > ul > li.cbp-hropen > a:hover {
color: #fff;
background: #47a3da;
}
/* sub-menu */
.cbp-hrmenu .cbp-hrsub {
display: none;
position: absolute;
background: #47a3da;
width: 100%;
left: 0;
}
.cbp-hropen .cbp-hrsub {
display: block;
padding-bottom: 3em;
}
.cbp-hrmenu .cbp-hrsub-inner > div {
width: 33%;
float: left;
padding: 0 2em 0;
}
. cbp-hrmenu .cbp-hrsub-inner:before,
.cbp-hrmenu .cbp-hrsub-inner:after {
content: » «;
display: table;
}
.cbp-hrmenu .cbp-hrsub-inner:after {
clear: both;
}
.cbp-hrmenu .cbp-hrsub-inner > div a {
line-height: 2em;
}
.cbp-hrsub h5 {
color: #afdefa;
padding: 2em 0 0.6em;
margin: 0;
font-size: 160%;
font-weight: 300;
}
/* Examples for media queries */
@media screen and (max-width: 52.75em) {
.cbp-hrmenu {
font-size: 80%;
}
}
@media screen and (max-width: 43em) {
.cbp-hrmenu {
font-size: 120%;
border: none;
}
.cbp-hrmenu > ul,
.cbp-hrmenu .cbp-hrsub-inner {
width: 100%;
padding: 0;
}
.cbp-hrmenu .cbp-hrsub-inner {
padding: 0 2em;
font-size: 75%;
}
. cbp-hrmenu > ul > li {
display: block;
border-bottom: 4px solid #47a3da;
}
.cbp-hrmenu > ul > li > a {
display: block;
padding: 1em 3em;
}
.cbp-hrmenu .cbp-hrsub {
position: relative;
}
.cbp-hrsub h5 {
padding-top: 0.6em;
}
}
@media screen and (max-width: 36em) {
.cbp-hrmenu .cbp-hrsub-inner > div {
width: 100%;
float: none;
padding: 0 2em;
}
}
Выпадающее горизонтальное меню с поиском на CSS3 и HTML5
Время чтения: 3 мин.
В данной статье мы создадим выпадающее горизонтальное меню с полем для поиска с помощью CSS3 и HTML5.
Пример данного меню можно увидеть здесь:
Посмотреть примерСкачать
HTML часть
Навигации состоит из маркированного списка (с классом . nav), который содержит внутри:
- Элементы списка, которые содержат обычные ссылки и не имеют никакого идентификатора или класса;
- #settings внутри которого изображения как ссылки;
- #search содержит поле для поиска и кнопку отправки текста;
- #options содержит ссылку и список( с классом .subnav), который работает как выпадающее меню.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | <ul> <li> <a href="#"><img src="images/settings.png"></a> </li> <li> <a href="#">Приложения</a> </li> <li> <a href="#">Сервис</a> </li> <li> <form action="" method="get"> <input name="search_text" placeholder="Поиск..." type="text"> <input name="search_button" type="button"> </form> </li> <li> <a href="#">Меню</a> <ul> <li><a href="#">Настройки</a></li> <li><a href="#">Приложения</a></li> <li><a href="#">Сервис</a></li> <li><a href="#">Разное</a></li> </ul> </li> </ul> |
CSS часть
Базовые стили:
1 2 3 4 | * { margin: 0; padding: 0; } |
Навигация и вид списка
1 2 3 4 5 6 7 8 9 10 11 | . nav { background: #232323; height: 60px; display: inline-block; } .nav li { float: left; list-style-type: none; position: relative; } |
Здесь задали фон для меню, а также расположили горизонтально элементы списка.
Ссылки в меню
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | .nav li a { font-size: 16px; color: white; display: block; line-height: 60px; padding: 0 26px; text-decoration: none; border-left: 1px solid #2e2e2e; font-family: sans-serif, Arial; text-shadow: 0 0 1px rgba(255, 255, 255, 0.5); } .nav li a:hover { background-color: #2e2e2e; } #settings a { padding: 18px; height: 24px; font-size: 10px; line-height: 24px; } |
Ссылки имеют высоту блока, то есть весь блок будет ссылкой. При наведении на ссылку фон меняется на серый. Блок с идентификатором #settings содержит изображение, поэтому для него задали такие свойства.
Поле поиска
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | #search { width: 357px; margin: 4px; } #search_text { width: 297px; padding: 15px 0 15px 20px; font-size: 16px; font-family: sans-serif, Arial; border: 0 none; height: 52px; margin-right: 0; color: white; outline: none; background: #1f7f5c; float: left; box-sizing: border-box; transition: all 0.15s; } ::-webkit-input-placeholder { /* WebKit браузеры */ color: white; } :-moz-placeholder { /* Mozilla Firefox 4 to 18 */ color: white; } ::-moz-placeholder { /* Mozilla Firefox 19+ */ color: white; } :-ms-input-placeholder { /* Internet Explorer 10+ */ color: white; } #search_text:focus { background: rgb(64, 151, 119); } #search_button { border: 0 none; background: #1f7f5c url("../images/search.png") center no-repeat; width: 60px; float: left; padding: 0; text-align: center; height: 52px; cursor: pointer; } |
Здесь идет оформление поля с поиском. Заданы разные свойства, при наведении, при фокусе и т.д.
Выпадающая часть
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | #options a { border-left: 0 none; } #options>a { background-image: url("../images/triangle.png"); background-position: 85% center; background-repeat: no-repeat; padding-right: 42px; } .subnav { visibility: hidden; position: absolute; top: 110%; right: 0; width: 200px; height: auto; opacity: 0; transition: all 0.1s; background: #232323; } .subnav li { float: none; } .subnav li a { border-bottom: 1px solid #2e2e2e; } #options:hover .subnav { visibility: visible; top: 100%; opacity: 1; } |
Блок с классом .subnav изначально спрятан, и появляется он только при наведении.
Если есть какие-то вопросы, задавайте их в комментариях ниже.
Успехов!
Горизонтальное выпадающее меню держит moving.
..how могу ли я заставить его оставаться на месте?
Я нуб выпадающего меню, и я, кажется, не могу понять, как удержать мое выпадающее меню от выдувания и перемещения основных кнопок. Я уверен, что это какая-то регулировка положения, но я не могу понять, где и что это такое. Вот ссылка jfiddle: http://jsfiddle.net/F4WvT/
Вот это html:
<div>
<ul>
<li><a href="#A">HOME</a>
</li>
<li><a href="#B">ABOUT</a>
<div>
<ul>
<li><a href="#A">Sub Category 1</a></li>
<li><a href="#B">Sub Category 2</a></li>
<li><a href="#C">Sub Category 3</a></li>
<li><a href="#D">Sub Category 4</a></li>
<li><a href="#E">Sub Category 5</a></li>
<li><a href="#F">Sub Category 6</a></li> </ul>
</div>
</li>
<li><a href="#B">CONTENT</a>
<div>
<ul>
<li><a href="#A">Sub Category 1</a></li>
<li><a href="#B">Sub Category 2</a></li>
<li><a href="#C">Sub Category 3</a></li>
<li><a href="#D">Sub Category 4</a></li>
<li><a href="#E">Sub Category 5</a></li>
<li><a href="#F">Sub Category 6</a></li> </ul>
</div>
</li>
<li><a href="#A">CONTACT</a>
</li>
</ul>
</div>
А еще CSS:
<style type="text/css">
#global-nav {
width: 180px;
height: 40px;
background-image: none;
float: left;
position: static;
margin-left:0px;
}
#global-nav a {
color:#000;
font-size:12px;
cursor:pointer;
display:block;
width: 200px;
height: 40px;
text-align:center;
vertical-align: central;
text-decoration:none;
font-weight:bold;
}
#global-nav ul {
background: whitesmoke;
padding: 0;
margin: 0;
}
#global-subnav ul{
background: #D3171A;
position: relative;
width: 250px;
text-align:center;
left: 180px;
top: -55px;
}
#global-nav li {
list-style: none;
border-bottom: none;
border-width: 0px;
}
#global-nav ul ul li {
display:none;
}
#global-nav li:hover {
background: none;
}
#global-nav li:hover ul li {
display:block;
}
</style>
Как мне заставить эти мои основные навигационные кнопки оставаться неподвижными? Хорошая карма для быстрого совета!
html
css
position
Горизонтальное выпадающее меню в HTML 5 и CSS 3 | Всё о IT и не только
Несколько лет назад создание выпадающего меню на сайте было кошмаром для веб-мастеров. Без JavaScript-кода, который обычно состоял из нескольких сотен строк, никто бы даже не попытался реализовать такое решение. Сегодня, в эпоху CSS 3, создание выпадающего меню является чистым удовольствием и, что самое главное, нам не нужно использовать никакие скрипты, запущенные на стороне клиента.
Мы начинаем создавать наше меню, конечно же, с создания скелета в HTML 5:
Сам код:
/* задаем цвет фона для контейнера nav. */
nav {
margin: 100px 0;
background-color: E64A19;
}
/* убираем отступы и поля, а также list-style для «ul»,
* и добавляем «position:relative» */
nav ul {
padding:0;
margin:0;
list-style: none;
position: relative;
}
/* применяем inline-block позиционирование к элементам навигации */
nav ul li {
margin: 0px -7px 0 0;
display:inline-block;
background-color: E64A19;
}
/* стилизуем ссылки */
nav a {
display:block;
padding:0 10px;
color:FFF;
font-size:20px;
line-height: 60px;
text-decoration:none;
}
/* изменяем цвет фона при наведении курсора */
nav a:hover {
background-color: 000000;
}
После применения стилей у нас должно получиться нечто вроде этого:
Чтобы добавить выпадающий список к какому-либо из элементов HTML меню, нам нужно добавить <ul> внутрь элемента <li> для пункта, в котором нужно скрыть выпадающий список:
<nav>
<ul>
<li><a href=»»>Home</a></li>
<li><a href=»»>WordPress</a>
<!— первый уровень выпадающего списка —>
<ul>
<li><a href=»»>Themes</a></li>
<li><a href=»»>Plugins</a></li>
<li><a href=»»>Tutorials</a></li>
</ul>
</li>
<li><a href=»»>Graphic Design</a></li>
<li><a href=»»>Inspiration</a></li>
<li><a href=»»>Contact</a></li>
<li><a href=»»>About</a></li>
</ul>
</nav>
горизонтальное » Скрипты для сайтов
7 767
Скрипты / Menu & Nav
Эффект зачеркивания при наведении в меню
Эффект зачеркивания при наведении на пункт в горизонтальном меню. Наиболее эффектно будет смотреться на лендингах, где горизонтальное меню расположено поверх фонового изображения.
5 450
Скрипты / Menu & Nav
Гибкое горизонтальное меню
Небольшой скрипт, который поможет в создании более эстетического адаптивного горизонтального меню. Если размер экрана не позволяет отобразить все пункты горизонтального меню, то данный скрипт перемещает эти пункты в выпадающее меню — «три точки». Использование этого скрипта, позволит отображать адаптивную иконку (гамбургер), тогда, когда вы сами это решите, так как меню теперь будет всегда смотреться аккуратно.
5 813
Скрипты / Menu & Nav
Диагональное меню на CSS
Используя возможности CSS3 в этом уроке сделаем диагональное меню, и напишем media queries, чтобы придать ему адаптивности.
2 770
Скрипты / Menu & Nav
Горизонтальное меню на CSS3
Симпатичное горизонтальное CSS3 меню с всплывающими пунктами при наведении.
5 217
Скрипты / Menu & Nav
Выпадающее меню на CSS3
Горизонтальное меню с выпадющими подпунктами с использованием css3.
3 064
Скрипты / Menu & Nav
Размытое меню на CSS3
Простое горизонтальное меню с эффектом размытия и с элементом адаптивности. Используется CSS3 и HTML5.
2 974
Скрипты / Menu & Nav
HorizontalNav — горизонтальная навигация
JQuery плагин, позволяющий сделать горизонтальную навигацию, которая будет занимать всю ширину контейнера в котором находится. Добавлена также и поддержка IE7.
4 108
Скрипты / Menu & Nav
Горизонтальное меню с выпадающими подпунктами
Горизонтальное меню с выпадающими подпунктами. Выпадающие элементы используют jQuery, все остальное оформлено на CSS. В демо включен практически макет сайта, осталось только заполнить центральную часть контентом и нарисовать красивую шапку. Но можно использовать и только саму идею меню.
2 064
Скрипты / Menu & Nav
Меню с эффектом подпрыгивания
Интересное подпрыгивающее меню (bounce), сделанное с помощью псевдо элементов и пользовательских атрибутов на CSS3. В примере простое горизонтальное и горизонтальное с выпадающими под пунктами меню.
3 041
Скрипты / Menu & Nav
Многоуровневое выпадающее меню
Многоуровневое выпадающее меню на CSS2. При этом работает оно в IE5.5, IE6, IE7, IE8, Firefox, Opera, Safari(PC) и Google Chrome.
2 130
Скрипты / Menu & Nav
Многоцветное меню на CSS3
Горизонтальное выпадающее меню, фишка которого состоит в том, что выпадающие блоки могут изменять цвет на тот, по какому из цветных квадратиков вы щелкните мышкой. При этом смена цвета реализована на CSS, а не на jаvascript.
2 778
Скрипты / Menu & Nav
Выпадающее CSS3 меню
Выпадающее меню на CSS3 сделанное на базе UI созданного Владимиром Кудиновым.
Как сделать горизонтальное выпадающее меню на сайте
Перед прочтением предлагаю рассмотреть — горизонтальное меню для сайта.
Перед тем как начнем копаться в коде, отмечу: данное выпадающее меню реализовано без использования jQuery и JavaScript, а только при помощи CSS и новых свойств CSS3. Помимо навигации снабдим наше меню еще и красивым раздвижным полем поиска.
Итак, структура HTML:
<div>
<!-- #navigation -->
<div>
<!-- #menu -->
<div>
<!-- #nav-->
<ul>
<!-- Home Item -->
<li>
<a href="#">Главная</a>
<!-- Level 1 -->
<ul>
<li><a href="#">Пункт №1</a></li>
<li><a href="#">Пункт №2</a></li>
<li><a href="#">Пункт №3</a></li>
<li><a href="#">Пункт №4</a></li>
<li><a href="#">Пункт №5</a></li>
<li><a href="#">Пункт №6 - Урв. 2</a>
<!-- Level 2 -->
<ul>
<li><a href="#">Подпункт №1</a></li>
<li><a href="#">Подпункт №2</a></li>
<li><a href="#">Подпункт №3 - Урв. 3</a>
<!-- Level 3 -->
<ul>
<li><a href="#">Подпункт №1</a></li>
<li><a href="#">Подпункт №2</a></li>
<li><a href="#">Подпункт №3 - Урв. 4</a>
<!-- Level 4 -->
<ul>
<li><a href="#">Подпункт №1</a></li>
<li><a href="#">Подпункт №2</a></li>
<li><a href="#">Подпункт №3</a></li>
</ul>
<!-- END Level 4 -->
</li>
</ul>
<!-- END Level 3 -->
</li>
</ul>
<!-- END Level 2 -->
</li>
</ul>
<!-- END Level 1 -->
</li>
<!-- END Home Item -->
<!-- Portfolio Item -->
<li>
<a href="#">Портфолио</a>
<ul>
<li><a href="#">Пункт №1</a></li>
<li><a href="#">Пункт №2</a></li>
<li><a href="#">Пункт №3</a></li>
<li><a href="#">Пункт №4</a></li>
<li><a href="#">Пункт №5</a></li>
</ul>
</li>
<!-- END Portfolio Item -->
<!-- Blog Item -->
<li>
<a href="#">Блог</a>
<ul>
<li><a href="#">Пункт №1</a></li>
<li><a href="#">Пункт №2</a></li>
<li><a href="#">Пункт №3</a></li>
<li><a href="#">Пункт №4</a></li>
</ul>
</li>
<!-- END Blog Item -->
<li><a href="#">Сервисы</a></li>
<li><a href="#">О нас</a></li>
<li><a href="#">Написать нам</a></li>
</ul>
<!-- END #nav -->
<!-- Search Form -->
<form action="#">
<input type="text" value="Поиск. .." onfocus="if (this.value == 'Поиск...') {this.value = '';}" onblur="if (this.value == '') {this.value = 'Поиск...';}" />
</form>
<!-- END Search Form -->
</div>
<!-- END #menu -->
</div>
<!-- END #navigation -->
</div>
В оберточный div помещаем заготовку нашего меню и форму для строки поиска. Первый уровень нашего меню представляет собой основные пункты меню, которые будут видны всегда, запихнуты они в элементы li списка ul с id=nav. Обворачиваем их в ссылки и начинаем наращивать нашу структуру – кладем списки ul без id в нужные элементы li корневого списка. Необходим еще один уровень вложенности? — Всегда, пожалуйста, выбираем li и засовываем туда еще один список. Количество уровней не ограничено, но не злоупотребляйте этим, иначе меню станет просто неюзабельным.
Далее подключаем уже готовый файл CSS:
<link href="style-menu.css" rel="stylesheet" type="text/css" />
Кто просто искал красивое плавающие выпадающее меню, на этом месте может остановиться и просто прикрепить файлы из архива себе на страницу. Для всех остальных же, скажу еще пару слов. Весь эффект данного меню заключается всего лишь в одной группе свойств transition:
#nav li a:hover,
#nav li ul li a:hover{
transition-property: color, background;
transition-duration: 0.5s, 0.5s;
transition-timing-function: linear, ease-out;
}
.searchfield:focus,
.searchfield:not(:focus){
transition-property: width;
transition-duration: 0.5s, 0.5s;
transition-timing-function: linear, ease-out;
}
#menu_div:hover,
#navigation:hover,
#nav li ul a,
#menu_div,
#navigation,
#nav li a,
#menu_div:not(:hover),
#navigation:not(:hover){
transition-property: opacity;
transition-duration: 0.5s, 0.5s;
transition-timing-function: linear, ease-out;
}
В transition-property указываем необходимое нам свойство: цвет, прозрачность, длину, ширину, фон и т.п., transition-duration – задает скорость изменения указанного свойства, transition-timing-function – стиль изменения свойства – довольно интересный атрибут, но об этом расскажу как-нибудь в следующий раз.
html — Использование CSS для отображения раскрывающегося меню по горизонтали
Я пытаюсь использовать горизонтальный список в веб-части в SharePoint. Я просматривал этот код снова и снова и не мог найти проблему. По какой-то причине список все еще отображается вертикально. Любые идеи?
CSS
ul {
отступ: 0;
стиль списка: нет;
ширина: 100%;
выравнивание текста: центр;
высота: 100 пикселей;
фон: #ffffff центр без повтора;
}
ul li {
дисплей: встроенный блок;
плыть налево; отступ: 25px 25px 0 125px;
маржа: 0;
положение: относительное;
размер шрифта: 25 пикселей; font-weight: жирный; цвет: #FFFFFF;
выравнивание текста: центр;
}
ul li a {
дисплей: блок;
цвет: #FFF; отступ: 10 пикселей 5 пикселей;
текстовое оформление: нет;
}
ul li a: hover {
}
ul li ul.падать{
минимальная ширина: 150 пикселей; / * Устанавливаем ширину раскрывающегося списка * /
ширина: 100%;
дисплей: нет;
позиция: абсолютная;
z-индекс: 999;
слева: 0;
плыть налево;
}
ul li: hover ul. dropdown {
дисплей: встроенный; / * Показать раскрывающийся список * /
фон: #FFFFFF;
слева: 0;
ширина: 100%;
маржа: 0;
отступ: 0;
}
ul li ul.dropdown li {
дисплей: встроенный;
плыть налево;
фон: #FFFFFF;
}
HTML List (все еще в процессе; просто тестирование, прежде чем я исправлю весь текст / ссылки)
Я не занимался этим уже много лет, но мой босс хочет, чтобы я попробовал это сделать. -_-
Простое горизонтальное раскрывающееся меню
Простое горизонтальное выпадающее меню CSS, совместимое с кроссбраузерностью, без изображений и JavaScript.
HTML код:
МенюПростое раскрывающееся меню CSS
Код CSS:
/ * CSSTerm. com Простое горизонтальное выпадающее меню CSS * / .drop_menu { фон: # 005555; отступ: 0; маржа: 0; тип-стиль-список: нет; высота: 30 пикселей; } .drop_menu li {float: left; } .drop_menu li a { отступ: 9 пикселей 20 пикселей; дисплей: блок; цвет: #fff; текстовое оформление: нет; шрифт: 12px arial, verdana, sans-serif; } / * Подменю * / .drop_menu ul { позиция: абсолютная; слева: -9999 пикселей; верх: -9999 пикселей; тип-стиль-список: нет; } .drop_menu li: hover {позиция: относительная; фон: # 5FD367; } .drop_menu li: hover ul { слева: 0px; верх: 30 пикселей; фон: # 5FD367; отступ: 0 пикселей; } .drop_menu li: hover ul li a { отступ: 5 пикселей; дисплей: блок; ширина: 168 пикселей; текстовый отступ: 15 пикселей; цвет фона: # 5FD367; } .drop_menu li: hover ul li a: hover {background: # 005555; }
Вертикальное раскрывающееся меню при наведении курсора с использованием CSS и HTML
Введение
В этой статье объясняется, как создать вертикальное раскрывающееся меню с помощью CSS и HTML.
Вы часто видите сайты, содержащие строку меню, которая опускается при наведении курсора и выглядит действительно здорово, но обычно это горизонтальные выпадающие меню. Эта статья поможет вам создать вертикальное выпадающее меню.
Его вывод будет примерно таким:
Теперь мы увидим процедуру создания такого выпадающего меню.
Шаг 1
Прежде всего, добавьте таблицу стилей и форму или страницу HTML.
Затем на странице HTML или в веб-форме .NET добавьте «Div» и назовите его «divMenu».
После создания Div нам нужно добавить список элементов и еще один список в эти элементы, поэтому его окончательный код будет примерно таким:
- Home1
- Homea
- < a href = "#"> Homeb
- Homec
- Home2
- Homed
- Homee
- Homef
- Home3
- Homeg
- < href = "#"> Homeh
- Homei
- Home4
- Home5
- Homej
- Homek
- Homel < / a>
- Home6
- div >
Шаг 2
Прямо сейчас ваш код не более чем этот:
Итак, чтобы он выглядел хорошо и интересно, мы внесем изменения в таблицу стилей, которую мы добавили ранее.
Добавьте этот код в таблицу стилей:
- #divMenu, ul, li, li li {
- margin: 0;
- отступ: 0;
- }
- #divMenu {
- width: 150px;
- высота: 27 пикселей;
- }
- #divMenu ul
- {
- line-height: 25px;
- }
- #divMenu li {
- стиль списка: нет;
- позиция: относительная;
- фон: # 641b1b;
- }
- #divMenu li li {
- стиль списка: нет;
- позиция: относительная;
- фон: # 641b1b;
- слева: 148 пикселей;
- верх: -27 пикселей;
- }
- #divMenu ul li a {
- width: 148px;
- высота: 25 пикселей;
- дисплей: блочный;
- текст-оформление: нет;
- выравнивание текста: по центру;
- font-family: Georgia, Times New Roman, с засечками;
- цвет: #ffffff;
- граница: сплошная 1px #eee;
- }
- #divMenu ul ul {
- Положение: абсолютное;
- видимость: скрыта;
- верх: 27 пикселей;
- }
- #divMenu ul li: hover ul {
- видимость: видимая;
- }
- #divMenu li: hover {
- background-color: # 945c7d;
- }
- #divMenu ul li: hover ul li a: hover {
- background-color: # 945c7d;
- }
- #divMenu a: hover {
- font-weight: bold;
- }
Здесь я использовал идентификатор
, другими словами «divMenu».Теперь все изменится, и ваш результат будет совершенно другим и интересным.
Выходные данные
40 лучших примеров и практик в 2020 г.
Четкое и хорошо структурированное раскрывающееся меню помогает пользователям перемещаться по веб-сайту / приложению, сужать их выбор и легко экономить место на экране. Таким образом, он широко используется для панелей навигации веб-сайтов / приложений, панелей поиска или панелей вкладок для улучшения UX.
Однако для UI / UX-дизайнеров настоящая проблема состоит в том, как сделать их простыми, эффективными и достаточно привлекательными.
В этой статье Mockplus собрал 40 лучших примеров дизайна раскрывающихся меню с возможностью нажатия и наведения, а также передовых методов, чтобы вы могли вдохновиться и с легкостью создавать отличительные раскрывающиеся меню для своих веб-сайтов / приложений.
Для вашего вдохновения включено множество дизайнов раскрывающихся меню для панелей навигации, панелей поиска, панелей вкладок и даже плавающих кнопок или значков.
30 лучших примеров дизайна раскрывающегося меню для вашего вдохновения
1. Converse
Converse — это модный интернет-сайт, на котором продается обувь, одежда и снаряжение. В его интерактивном раскрывающемся меню навигации есть потрясающее раскрывающееся подменю с двумя столбцами, чтобы направлять пользователей. Предоставляются богатые эффекты наведения, чтобы помочь пользователям легко выбрать желаемые параметры меню.
2. Santa Cruz
Santa Cruz — это интернет-магазин велосипедов, в котором есть довольно креативные выпадающие меню навигации, в которых отображаются разные велосипеды с изображениями.Посетители веб-сайта могут легко получить представление о том, что они увидят в этом магазине. Это хорошая идея, чтобы все веб-сайты интернет-магазинов следили за ними, чтобы улучшить UX.
3. Helias Oils
Helias Oils — это веб-сайт, посвященный чистым эфирным маслам, который также имеет привлекательные раскрывающиеся меню навигации в сочетании с изображениями продуктов. Он также использует приятные эффекты наведения и волнистые переходы для привлечения пользователей.
4. Вихревое раскрывающееся меню CSS3
Вращающееся раскрывающееся меню CSS3 — это уникальный шаблон раскрывающегося меню, легко создаваемый с помощью CSS.Когда вы наводите курсор на верхние пункты меню, они появляются с крутым эффектом кружения. Если вам интересно, просто нажмите ссылку на учебник, чтобы узнать больше.
5. Lion Burger
Lion Burger имеет очень привлекательную строку раскрывающегося меню в виде кнопок. Пункты подменю сделаны с характерными эффектами наведения. Более того, элементы красной кнопки и белый текст действительно отлично работают на темном фоне страницы.
6. CSS3 Slide Drop Down Box Menu
CSS3 Slide Drop Down Box Menu — еще один красивый шаблон выпадающего меню навигации с очень крутым эффектом скольжения. При наведении указателя мыши на пункт меню появится миниатюра изображения, а соответствующие подменю плавно сдвинутся вправо / влево. Вы также можете щелкнуть нижнюю ссылку, чтобы просмотреть руководство по CSS.
7. Адаптивное раскрывающееся меню навигации
Адаптивное раскрывающееся меню навигации происходит из шаблона веб-сайта рецептов Bootstrap. Его раскрывающееся меню состоит из трех столбцов подменю для демонстрации категорий рецептов. Значительный слайдер с изображением справа также помогает пользователям быстро выбрать правильный рецепт.
8. Выпадающее меню Bryan
Выпадающее меню Bryan — это интеллектуальное многоуровневое раскрывающееся меню. Пользователи могут легко навести указатель мыши на верхний элемент, чтобы шаг за шагом отобразить все элементы подменю. Он идеально подходит для веб-сайтов с очень сложной системой навигации.
9. PopSockets
PopSockets — это красивый веб-сайт для онлайн-покупок по телефону, а в его раскрывающемся меню навигации используются красочные иллюстрации для презентации продуктов, что делает впечатляющий внешний вид.
10. Исследование минимального раскрывающегося меню
Исследование минимального раскрывающегося меню — это классное минималистичное раскрывающееся меню навигации. Все его пункты главного меню были упрощены в виде очень тонких цветных полос. При наведении указателя мыши на них всплывают элементы подменю, чтобы направлять пользователей. Идеальный пример для создания минималистичного веб-сайта.
11. Раскрывающееся меню Creative со значками
Раскрывающееся меню Creative со значками — это чистое и хорошо продуманное раскрывающееся меню навигации.Он оформлен в очень модной бело-голубой цветовой гамме. И каждый элемент подменю хорошо структурирован и имеет очень яркие значки штрихов.
12. Выпадающее меню Zenith Arena De Lille
Выпадающее меню Zenith Arena De Lille специально создано для многоцелевой крытой арены. Поскольку все их мероприятия расписаны по месяцам, пользователи могут легко щелкнуть, чтобы отобразить или скрыть полный список событий за месяц, и выбрать желаемое для просмотра деталей.
13.Выпадающее меню SkySmile
Выпадающее меню SkySmile использует градиентный цвет фона для выделения раскрывающихся меню. И синяя цветовая схема также отлично сочетается с фоном домашней страницы.
14. Минимальное взаимодействие с раскрывающимся меню
Минимальное взаимодействие с раскрывающимся меню — это очень классическое раскрывающееся меню для кнопки с плавающим значком. При наведении указателя мыши на кнопку появляется раскрывающееся меню, состоящее из значков, предлагающее различные варианты навигации.Он идеально подходит, чтобы помочь вам создать минималистичное мобильное приложение.
15. Раскрывающееся меню мобильного приложения
Раскрывающееся меню мобильного приложения — еще один хороший пример, которому дизайнеры могут следовать, чтобы создать отличное раскрывающееся меню для минималистичных мобильных приложений. Он использует не только элементы подменю значков, но также имеет очень творческий эффект скольжения для яркого отображения параметров.
16. Дизайн раскрывающегося окна уведомлений
Дизайн раскрывающегося окна уведомлений — отличный дизайн раскрывающегося меню для минималистичных веб-сайтов, чтобы продемонстрировать новости уведомлений.Когда пользователи наводят курсор на верхний значок уведомления, мгновенно появляется раскрывающийся список, в котором отображаются различные новости с уведомлениями. Соответствующее время, люди и ключевые слова новостей также будут показаны для быстрого сканирования.
17. Выпадающее меню уведомлений
Раскрывающееся меню уведомлений — еще одно красивое раскрывающееся меню, предназначенное для кнопок значков уведомлений. В отличие от предыдущего примера, заполненного изображениями и информацией, это раскрывающееся меню уведомлений имеет очень минималистичный вид и использует милые иллюстрации кошек и ярко-розовые цвета, чтобы привлечь внимание посетителей.
18. HTML-анимация раскрывающегося меню
HTML-анимация раскрывающегося меню специально создана для минималистских веб-сайтов , чтобы отображать / скрывать меню навигации. Он имеет уникальную медленно опускающуюся анимацию. Он также предоставляет пользователям коды HTML / CSS / JS. Если вам интересно, вы можете напрямую скопировать и вставить эти коды в свой дизайн для более быстрой и простой разработки.
19. О нас Анимация выпадающего меню
О нас Анимация выпадающего меню — это выпадающее меню, предназначенное для раздела «О нас».Он имеет умную всплывающую анимацию. И каждый элемент подменю имеет плоский значок, чтобы помочь пользователям легко найти информацию об элементе.
20. Интерактивные раскрывающиеся меню
Интерактивные раскрывающиеся меню — это раскрывающееся меню, предназначенное для панели фильтров. После этого пользователи могут легко выбрать параметры фильтра, такие как тип дома, спальни, удобства и т. Д., Чтобы найти желаемые результаты. Это хороший пример того, как создавать интерактивные раскрывающиеся меню для полос поиска / фильтров.
21. Раскрывающееся меню магазина
Раскрывающееся меню магазина использует значки только для представления различных категорий продуктов.
22. Mini Cooper
Mini Cooper — это крутой автомобильный веб-сайт, который использует хорошо продуманное раскрывающееся меню навигации. Он имеет богатые стили подменю и эффекты зависания.
23. Board Star
Board Star — это интернет-магазин сноубордов.Его раскрывающееся меню навигации имеет характерный стиль ретро-дизайна и использует интуитивно понятный список и дизайна карточек для предоставления различных вариантов продукта.
24. Porsche
Porsche — еще один стильный автомобильный веб-сайт, который использует великолепное раскрывающееся меню навигации. При наведении указателя мыши на автомобиль справа появится соответствующее изображение, что позволит вам быстро просмотреть автомобиль заранее.
25. Audi
Audi — это известный автомобильный веб-сайт с интуитивно понятным раскрывающимся меню навигации.Как и Porsche, в его раскрывающихся подменю используются изображения автомобилей. Однако он также имеет очень иную и эффективную компоновку для представления деталей автомобиля.
26. Sony Play Station
Sony Play Station имеет отличное раскрывающееся меню навигации, на которое можно нажимать, и все его подменю состоят из креативных жирных значков. Прекрасный пример создания привлекательного графического меню.
27. Mr Clean
Mr Clean предлагает различные чистые продукты и решения.На его официальном веб-сайте используется великолепное раскрывающееся меню навигации, состоящее из изображений продуктов и коротких этикеток.
28. KFC
KFC использует вертикальное раскрывающееся меню для помощи в навигации. Анимация подменю тоже очень крутая.
29. Taco Bell
Taco Bell может помочь пользователям быстро найти в Интернете вкусные меню или близлежащие магазины. На его веб-сайте есть потрясающая боковая панель навигации, в которой используются вертикальные раскрывающиеся меню.
30.Bern Tourism
Bern Tourism — это туристический веб-сайт, который может помочь посетителям найти лучшие события, достопримечательности и развлечения в Швейцарии. Он использует многоуровневое раскрывающееся меню навигации с интеллектуальной панелью вкладок.
10 Практических рекомендаций по раскрывающемуся меню, которым вы должны следовать
После просмотра всех этих примеров раскрывающегося меню вы, возможно, захотите узнать, что вообще может быть хорошим раскрывающимся меню и каким советам следует следовать, выпадающее меню.
Итак, мы также собрали 10 лучших практик для дизайна раскрывающихся меню, чтобы объяснить, каким советам вы должны следовать, чтобы быстро создать более полезный и эффективный дизайн раскрывающегося меню:
1. Держите меню меньше двух уровни глубокие
Слишком длинные или сложные раскрывающиеся меню могут доставлять неудобства пользователям, а иногда даже заставлять их терять фокус в меню. Таким образом, вы всегда должны держать раскрывающиеся меню ниже двух уровней.
Возьмем в качестве примера веб-сайт Slack. Он использует двухуровневое раскрывающееся меню для четкого и интуитивно понятного представления информации о ресурсах.
Конечно, если вам действительно нужно меню с более чем двумя уровнями, эффект наведения или выбора может помочь вам направить внимание пользователей, позволяя им быстро находить нужные параметры меню.
Например, WooCommerce использует эффекты умного наведения для пошагового отображения пунктов меню.
2. Создание четких и хорошо структурированных раскрывающихся меню
При разработке раскрывающегося меню очень важно иметь чистый, хорошо структурированный и читаемый список элементов.Чтобы добиться этого, вы должны учитывать множество факторов, таких как читаемый шрифт, четкая типографика, достаточный интервал и даже аккуратная структура / макет и т. Д.
На веб-сайте музыкального оборудования ниже показано, как создать хорошо структурированный горизонтальный переход. раскрывающееся меню с использованием различных шрифтов, размеров шрифтов, цветов, значков и макетов:
3. Добавьте эффекты наведения или выделения для выделения пунктов меню
Чтобы создать эффективное раскрывающееся меню, вы должны добавить один, два или другие эффекты наведения или выделения, чтобы направлять пользователей.
Например, при наведении указателя мыши на раскрывающееся меню футбола ниже появится ярко-синий фон и белый значок, чтобы выделить выбранный вами пункт меню. Это поможет вам быстро найти нужные пункты меню.
Также обратите внимание, что вы всегда должны сосредотачиваться на времени закрытия эффекта наведения. Слишком длинное или короткое и то и другое может вызвать проблемы у пользователей.
4. Используйте значки или изображения для обогащения раскрывающихся меню.
Не существует фиксированного способа создания раскрывающегося меню.Помимо использования различных шрифтов, типографий и цветов, вы все равно можете добавлять собственные значки и изображения, чтобы обогатить свои меню.
Как и на веб-сайте JetBlue ниже, вы все равно можете использовать богатые изображения, значки и тексты для создания более привлекательного и эффективного раскрывающегося меню.
5. Поддерживайте единообразие стилей меню
При разработке раскрывающегося меню следует использовать похожие стили, фон и изображения меню, чтобы все меню работало как единое целое.
В качестве примера возьмем указанный ниже веб-сайт компьютеров Dell. Он использует двухуровневые раскрывающиеся меню с одинаковыми стилями текста и изображений для привлечения посетителей.
6. Невозможные элементы меню выделены серым цветом
Когда некоторые продукты или услуги отсутствуют в наличии или временно недоступны, слепое удаление соответствующих элементов меню может нарушить всю структуру, что затрудняет просмотр и навигацию пользователями. В этот момент вы можете сразу их выделить серым, чтобы избежать проблем.
Непосредственное выделение серым цветом элементов меню не повлияет на весь макет, сэкономив вам больше времени на обработку недоступных параметров.
7. Добавьте быстрые выпадающие анимации
Вы также можете добавить быстрые выпадающие анимации (например, анимацию скольжения, затухания, прыжка или вращения) для привлечения пользователей.
Например, на следующем веб-сайте Mediate Template используется привлекательная скользящая анимация для привлечения пользователей:
8.Используйте полупрозрачный фон, чтобы выделить свое меню.
Чтобы выделиться из раскрывающегося меню, вы можете использовать полупрозрачный фон.
На приведенном ниже веб-сайте Econsultancy используется полупрозрачный фон для легкого выделения всего раскрывающегося меню:
9. Используйте другой цвет фона для выделения меню.
Вместо полупрозрачного фона цветной Фон меню также помогает отличать раскрывающиеся меню от фона.
И этот веб-сайт Мебели дает хороший пример того, как выделить раскрывающееся меню другим цветом фона:
10. Регулярно проверяйте раскрывающееся меню
Что бы ни случилось, вы также всегда должны проверять раскрывающееся меню. регулярно открывайте меню, чтобы убедиться, что оно всегда хорошо работает.
В целом, мы надеемся, что эти творческие примеры и передовые методы могут вас вдохновить.
Как создать раскрывающееся меню?
Если вы все еще не знаете, как создать раскрывающееся меню с нуля, есть два доступных способа:
1.Создайте раскрывающееся меню с помощью шаблона HTML / CSS
Для дизайнеров UI / UX самый быстрый способ — использовать шаблон дизайна раскрывающегося меню. В Интернете доступно множество шаблонов HTML / CSS . Вы можете свободно искать тот, который вам нужен.
2. Создайте раскрывающееся меню с помощью инструмента дизайна.
Однако, если вам не нужен шаблон, вы можете использовать инструмент дизайна для визуализации идей меню. Mockplus , универсальная платформа для разработки продуктов, — хороший вариант для вас.Он позволяет с легкостью создавать прототипы раскрывающихся меню, добавлять взаимодействия, тестировать, публиковать и передавать в режиме онлайн.
Заключение
Хорошо продуманное раскрывающееся меню помогает эффективно улучшить UX. Мы надеемся, что эти лучшие примеры дизайна раскрывающихся меню, передовые практики и советы по дизайну помогут вам легко создать отличный веб-сайт / приложение.
Как создать горизонтальное раскрывающееся меню в HTML | Small Business
В HTML раскрывающиеся меню являются функцией форм.Они дают человеку, заполняющему форму, несколько предопределенных вариантов, не занимая много места. HTML-код для раскрывающегося меню прост и должен быть включен между открывающим и закрывающим тегами
для работы в почтовой программе формы. Вы можете дополнительно стилизовать раскрывающееся меню с помощью CSS, чтобы оно выглядело более единообразно и соответствовало дизайну вашей страницы.
Напишите открывающий тег для раскрывающегося меню, то есть. Наличие имени для вашего меню помогает обработчику формы идентифицировать и соответствующим образом маркировать вывод.Однако это будет варьироваться в зависимости от того, как вы настроили свой веб-сайт для обработки форм.
Добавьте необходимые параметры для раскрывающегося меню с помощью тега параметра. Это может выглядеть примерно так:
AliceBob
Вы можете иметь столько, сколько хотите, хотя создание слишком большого количества опций для раскрывающегося меню может быть непрактичным, особенно если вы рискуете превысить высоту окна. Если у вас есть более десятка или около того раскрывающихся вариантов, вы можете рассмотреть возможность использования переключателей и столбцов для своих вариантов.
Закройте свой тег, как только вы закончите с тегами, например
AliceBobCharlieDaneEdwardFrances
Если вы хотите начать с определенной выбранной опции, вы можете добавить ‘selected = «selected»‘ к опции, например
AliceBobCharlieDaneEdwardFrances
Если вы не используете этот тег, в раскрывающемся списке будет использоваться первый вариант, выбранный по умолчанию.
Измените стиль раскрывающегося меню по умолчанию, указав тег select в таблице стилей, например:
select {font-size: 14px; фон: # 8CCCC8; цвет: #FFFFFF; граница: 1px solid # 000000; ширина: 75 пикселей; }
Вы также можете сделать это с помощью «option», если хотите изменить внешний вид параметров.Например, вы можете захотеть, чтобы выбранный параметр имел белый текст, а другие параметры — черный текст, когда пользователь щелкает стрелку, чтобы просмотреть их.
Ссылки
Советы
- Если вы хотите применить класс или идентификатор для выбора, чтобы ваш стиль CSS влиял только на одно раскрывающееся меню, вы должны изменить тег на