Демо
  • 2,94 КБ
  • HTML, CSS
  • Меню
  • вертикальное
  • Лицензия MIT
HTML
<ul class="menu">
    <li title="главная"><a href="#" class="home">главная</a></li>
    <li title="поиск"><a href="#" class="search">поиск</a></li>
    <li title="работы"><a href="#" class="pencil">работы</a></li>
    <li title="мы"><a href="#" class="active about">мы</a></li>
    <li title="архив"><a href="#" class="archive">архив</a></li>
    <li title="контакты"><a href="#" class="contact">контакты</a></li>
</ul>
CSS
@import url("https://fonts.googleapis.com/css2?family=Comfortaa:wght@700&display=swap");
@import url("//cdnjs.cloudflare.com/ajax/libs/font-awesome/4.0.3/css/font-awesome.min.css");
.menu {
    font-family: "Comfortaa", sans-serif;
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    list-style-type: none;
    margin: 0;
    padding: 0;
    background: #fff4f5;
}
.menu li a {
    display: block;
    height: em;
    width: 5em;
    text-indent: -500em;
    line-height: 5em;
    text-align: center;
    color: #ff5c62;
    background: #fff4f5;
    position: relative;
    border-bottom: 1px solid #ffe2e3;
    -webkit-transition: background 0.3s ease-in-out;
    -o-transition: background 0.3s ease-in-out;
    -moz-transition: background 0.3s ease-in-out;
    transition: background 0.3s ease-in-out;
}
.menu li a:before {
    font-family: FontAwesome;
    text-indent: 0em;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    font-size: 1.4em;
}
.menu li a.search:before {
    content: "\f002";
}
.menu li a.archive:before {
    content: "\f187";
}
.menu li a.pencil:before {
    content: "\f040";
}
.menu li a.contact:before {
    content: "\f003";
}
.menu li a.about:before {
    content: "\f007";
}
.menu li a.home:before {
    content: "\f015";
}
.menu li a:hover {
    background: #ff5c62;
    color: #fff;
}
.menu li.current a {
    background: #ff5e5e;
    color: #fff;
}
.menu li a.active {
    background: #ff5e5e;
    color: #fff;
}
.menu li a.active:after {
    position: absolute;
    left: 5em;
    top: 0;
    content: "";
    border: 2.5em solid transparent;
    border-left-color: #ff5c62;
    border-width: 2.5em 1em;
}
.menu li {
    position: relative;
}
.menu li:after {
    content: attr(title);
    position: absolute;
    left: 5em;
    top: 0;
    height: 5em;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    text-transform: uppercase;
    background: #ff5c62;
    padding: 2em;
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    visibility: hidden;
    opacity: 0;
    color: white;
}
.menu li:hover:after {
    visibility: visible;
    opacity: 1;
}
@media screen and (max-height: 34em) {
    .menu li {
        font-size: 70%;
    }
}

Интересный фрагмент кода создает стильное вертикальное меню с использованием HTML и CSS, сочетая в себе изящный и современный дизайн, который одновременно функционален и визуально привлекателен. В его основе лежит структура HTML, построенная вокруг неупорядоченного списка <ul> с каждым элементом <li>, представляющим различные разделы меню. Эти элементы сделаны кликабельными через теги якоря <a>, облегчая навигацию.

Погружаясь в CSS, меню получает фиксированное положение на экране, что обеспечивает его видимость при прокрутке страницы вниз. Эстетический выбор мягкого розового фона с элементами, выделенными красным при наведении, добавляет теплый и приветливый оттенок. Использование иконок FontAwesome перед каждым элементом меню вносит дозу визуального стиля и помогает пользователям быстро идентифицировать интересующий их раздел. Кроме того, для сглаживания эффектов изменения цвета используются CSS-переходы, улучшая опыт взаимодействия с пользователем.

Что делает это меню особенным, так это его адаптивность. При наведении на каждый элемент меню его название отображается в стиле всплывающей подсказки справа, элегантно увеличивая ширину меню. Эта функция, в сочетании с медиа-запросами, которые корректируют размер шрифта для меньших экранов, обеспечивает дружественность меню и доступность на различных устройствах. В итоге получается вертикальное меню, которое не просто инструмент навигации, но и яркий элемент дизайна сайта.

  •  Меню №184
    Меню №23
    Меню №23
    • HTML, CSS, JS
    • 9,87 КБ
    • Вертикальное
    Подробнее
  •  Меню №185
    Меню №22
    Меню №22
    • HTML, CSS
    • 6,33 КБ
    • Вертикальное, выпадающее
    Подробнее
  •  Меню №185
    Меню №21
    Меню №21
    • HTML, CSS
    • 1,64 КБ
    • Вертикальное, сайдбар, скользящее
    Подробнее
  •  Меню №184
    Меню №20
    Меню №20
    • HTML, CSS
    • 5,06 КБ
    • Вертикальное, скользящее
    Подробнее
  •  Меню №184
    Меню №19
    Меню №19
    • HTML, CSS
    • 8,21 КБ
    • Вертикальное, гамбургер, скользящее
    Подробнее
  •  Меню №184.5
    Меню №17
    Меню №17
    • HTML, CSS, JS
    • 3,03 КБ
    • Вертикальное
    Подробнее
Меню