• Горизонтальное меню css с иконками. Вертикальное меню на CSS Вертикальное меню с иконками css

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

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

    1. Вертикальное меню с заголовком

    Простой элегантный вариант оформления. Подходит для стилизации категорий на сайте. При наведении элемент списка меняет цвет ссылки.

    Категории

    * {box-sizing: border-box; margin: 0;} .widget { padding: 20px 30px; background: white; font-family: "Roboto", sans-serif; } .widget-title { text-transform: uppercase; letter-spacing: 2px; color: #222; font-size: 16px; padding-left: 15px; margin-bottom: 15px; border-left: 2px solid #b99d61; } .widget-list { padding: 0; list-style: none; } .widget-list a:before { content: "\2014"; margin-right: 14px; } .widget-list a { text-decoration: none; outline: none; display: block; padding: 6px 0; letter-spacing: 1px; font-weight: 300; color: #444; transition: .3s linear; } .widget-list a:hover {color: #b99d61;}

    2. Вертикальное меню в стиле «схема метро»

    Интересное решение для оформления вертикального меню, предусмотрено добавление вложенных меню. «Ветка метро» — левая граница списка, маркеры генерируются перед каждой ссылкой.

    .metro { list-style: none; padding: 0; margin: 30px 0 0 50px; border-left: 5px solid #DAE4F1; } .metro li {line-height: 2em;} .metro ul { margin: 20px 0 20px 15px; padding: 0; border: none; list-style: none; } .metro ul:before, .metro ul:after { content: ""; width: 5px; height: 28px; background: #DAE4F1; position: relative; display: block; left: -9px; } .metro ul:before { transform: rotate(-45deg); margin-top: -15px; } .metro ul:after { transform: rotate(45deg); bottom: -20px; } .metro ul li {border-left: 5px solid #DAE4F1;} .metro ul li:first-child { margin-top: -5px; padding-top: 5px; } .metro ul li:last-child { padding-bottom: 9px; margin-bottom: -25px; } .metro a { text-decoration: none; display: block; font-family: "Noto Sans", sans-serif; color: #4A4B4D; } .metro a:before { content: ""; display: inline-block; background: #CA682D; width: 12px; height: 12px; left: -9px; position: relative; border-radius: 50%; margin-right: .5em; }

    3. Вертикальное меню с эффектами при наведении

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

    Категории

    .category-wrap { padding: 15px; background: white; width: 200px; box-shadow: 2px 2px 8px rgba(0,0,0,.1); font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; } .category-wrap h3 { font-size: 16px; color: rgba(0,0,0,.6); margin: 0 0 10px; padding: 0 5px; position: relative; } .category-wrap h3:after { content: ""; width: 6px; height: 6px; background: #80C8A0; position: absolute; right: 5px; bottom: 2px; box-shadow: -8px -8px #80C8A0, 0 -8px #80C8A0, -8px 0 #80C8A0; } .category-wrap ul { list-style: none; margin: 0; padding: 0; border-top: 1px solid rgba(0,0,0,.3); } .category-wrap li {margin: 12px 0 0 0px;} .category-wrap a { text-decoration: none; display: block; font-size: 13px; color: rgba(0,0,0,.6); padding: 5px; position: relative; transition: .3s linear; } .category-wrap a:after { content:"\f18e"; font-family: FontAwesome; position: absolute; right: 5px; color: white; transition: .2s linear; } .category-wrap a:hover { background: #80C8A0; color: white; }

    4. Вертикальное меню с иконками

    Иконки в меню создают визуальный якорь, дополняя словесное описание каждой категории. Для отображения иконок нужно подключить . Вы также можете использовать любой другой иконочный шрифт или иконки-картинки.

    Категории

    * {box-sizing: border-box; margin: 0;} .widget { padding: 20px; border: 5px solid #f1f1f1; background: #fff; border-radius: 5px; font-family: "Roboto", sans-serif; } .widget h3 { margin-bottom: 20px; text-align: center; font-size: 24px; font-weight: normal; color: #424949; } .widget ul { margin: 0; padding: 0; list-style: none; width: 250px; } .widget li { border-bottom: 1px solid #eaeaea; padding-bottom: 15px; margin-bottom: 15px; } .widget li:last-child { border-bottom: none; margin-bottom: 0; padding-bottom: 0; } .widget a { text-decoration: none; color: #616a6b; display: inline-block; } .widget li:before { font-family: FontAwesome; font-size: 20px; vertical-align:bottom; color: #dd3333; margin-right: 14px; } .widget li:nth-child(1):before {content:"\f1fc";} .widget li:nth-child(2):before {content:"\f0d0";} .widget li:nth-child(3):before {content:"\f0cd";} .widget li:nth-child(4):before {content:"\f028";} .widget li:nth-child(5):before {content:"\f03d";}

    5. Вертикальное меню с картинками

    Данный пример можно использовать для оформления блоков с новинками, похожими товарами, и т.п. сайте интернет-магазина.

    Jpeg">

    Продукт 1
    ₽ 2000
    Продукт 2
    ₽ 2500
    Продукт 3
    ₽ 2070
    @import url("https://fonts.googleapis.com/css?family=Open+Sans:300,400,600"); .col { width: 300px; background: white; padding: 20px; border: 1px solid #eeeeee; font-family: "Open Sans", sans-serif; } .col * {margin: 0;} .widget-title { margin: 0 0 30px; line-height: 1; text-transform: uppercase; letter-spacing: 1px; font-size: 20px; color: #242424; overflow: hidden; } .widget-title:after { content: ""; position: relative; display: inline-block; width: 100%; vertical-align: middle; right: -15px; margin-right: -100%; border-top: 2px solid #cca86d; } .price-line {margin-bottom: 20px;} .price-line:last-child {margin-bottom: 0;} .price-line:after { content: ""; display: table; clear: both; } .product-image { width: 80px; float: left; } .product-image a { display: block; outline: none; } .product-image img { display: block; width: 100%; } .product-content { float: left; margin-left: 20px; } .product-title { font-size: 18px; margin-bottom: 10px; line-height: 1; } .product-title a { text-decoration: none; color: #242424; } .price-box { color: #666; font-size: 18px; line-height: 1; } .star-rating { margin-bottom: 10px; font-size: 13px; position: relative; font-family: "FontAwesome"; } .star-rating:before { content: "\f005 \f005 \f005 \f005 \f005"; position: absolute; top: 0; left: 0; color: #FF9919; }

    Хорошая навигация по сайту очень важна блоггеров. С ее помощью посетитель быстро находит нужную страницу блога. Ценят понятность сайта и поисковики. В этой статье вы узнаете как сделать горизонтальное меню для Blogger со всплывающими иконками.
    Меню со всплывающими кнопками-иконками создан на CSS. Для просмотра меню, нажмите на кнопку ниже:

    Как вставить горизонтальное меню css с иконками на Blogger

    1. Перейдите во вкладку “Шаблон”, поставьте курсор в редактор (в любое место),
    2. Нажмите Ctrl + F для поиска по коду и найдите отрезок кода ]]>
    3. Вставьте перед этим кодом следующий код:
      ..

      /* The CSS Code for the menu starts here bloggertrix.com */ #btrix-nav {margin: 100px auto;list-style: none;width: 632px;height: 87px;overflow-y: hidden;}
      #btrix-nav li {float: left;}
      #btrix-nav li a {display: block;color: white;width: 120px;height: 61px;margin-top: 24px;text-decoration: none;text-align: center;border-top: 1px solid #bbb;border-bottom: 1px solid #555;}
      #btrix-nav li a span.aname {font: bold 17px/61px "Arial";color: #fff;text-transform: uppercase;cursor: pointer;position: relative;top: 0;transition: top .5s ease;text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);}
      #btrix-nav li a img {position: relative;top: 0;transition: top .5s ease;}
      #btrix-nav li a:hover {cursor: pointer;}
      #btrix-nav li a:hover img {top: -85px;}
      #btrix-nav li a:hover .aname {top: 85px;}
      #btrix-nav li:nth-child(1) a {background: #3eb006;border-radius: 5px 0 0 5px;border-left: 1px solid #bbb;}
      #btrix-nav li:nth-child(2) a {background: #9bc704;}
      #btrix-nav li:nth-child(3) a {background: #0dc3ff;}
      #btrix-nav li:nth-child(4) a {background: #51a2ec;}
      #btrix-nav li:nth-child(5) a {background: #6e3cab;border-radius: 0 5px 5px 0;border-right: 1px solid #555;}

    4. Теперь перейдите во вкладку “Дизайн”,
    5. Добавьте новый элемент HTML / JavaScript и добавьте код:


    6. Главная https://2.bp.blogspot.com/-vcR6lUGsroY/Ug5ATZk8oZI/AAAAAAAAA00/XENkFMaBgv0/s1600/btrix-home.png " />

    7. Скачать https://2.bp.blogspot.com/-TcXder58ssQ/Ug5ASx8pT0I/AAAAAAAAA0o/5UdA4_gLnV8/s1600/btrix-download.png " />

    8. MySql https://2.bp.blogspot.com/-umlQ7fKXobk/Ug5AT2bLnnI/AAAAAAAAA08/yrQHl6qPMH8/s1600/btrix-mysql.png " />

    9. Html https://2.bp.blogspot.com/-2-iy8RJ92V8/Ug5ASDCru-I/AAAAAAAAA0c/GOBCPpZlA04/s1600/Btrix-html.png " />

    10. Контакты https://4.bp.blogspot.com/-vsm9s0yQr9I/Ug5ASjqawnI/AAAAAAAAA0k/rqb01AbGaFw/s1600/btrix-contact.png " />
    11. Внесите в код, который добавили в гаджет HTML / JavaScript необходимые изменения:
    • Значок # измените на ссылку на нужную страницу блога (например, страницу метки, страницу “контакты”, главную страницу блога и др)
    • ссылку на картинку, выделенную оранжевым , замените на прямую ссылку на иконку-картинку для соответствующего пункта.
    • Пункт, выделенный синим , это название страницы меню css.
  • Переместите элемент HTML ? JavaScript в нужное место во вкладке “Дизайн” блога.
  • Для вашего меню вы можете использовать иконки, логотипы и другие картинки png с прозрачным фоном. Для того, чтобы найти нужные картинки лучше использовать поиск по иконками. Например, iconsearch.ru

    Это список ссылок, ведущих на разные страницы сайта. Неплохо смотрится, когда список ссылок вместо простых маркеров, дополняется иконками и совсем необязательно здесь использовать графику. Зачем создавать лишние запросы к базе данных?

    HTML-код

    Между тегами li прописываем ссылку a (# временная заглушка), внутри которой два блочных элемента span . В первом span - тег i с классом иконки, код которой был скопирован с сайта Font Awesome . Во втором span - название ссылки, то есть текст.





    • Велосипеды





    • Мотоциклы





    • Автобусы





    • Автомобили





    • Вертолёты


    После подключения между тегами head иконочного шрифта Font Awesome - меню имеет вот такой вид.

    CSS стили

    Для начала на Google Font подберем привлекательный шрифт с поддержкой кириллицы, если вертикальное меню будет на русском.

    Копируем код подключения выбранного шрифта и вставляем сверху в CSS файле.

    @import url("https://fonts.googleapis.com/css?family=Marck+Script");

    В селекторе body пишем название выбранного шрифт и задаем ему размер.

    Body {
    margin: 0;
    padding: 0;
    font-family: "Marck Script", sans-serif;
    font-size: 20px;
    }

    Позиционируем наше меню относительно окна браузера, отступая сверху на 10% и слева на 20%. Разумеется, что эти цифры взяты с "потолка", у вас они будут свои.

    Ul {
    position: absolute;
    top: 10%;
    left: 20%;
    }

    Фиксируем ширину меню на 200 пикселях.

    Width: 200px;

    Мы дошли до пунктов меню списка. Убираем маркеры у пунктов li .

    Ul li {
    list-style: none;
    }

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

    Border-top: 1px solid #131313;
    border-bottom: 1px solid #131313;
    margin: -1px 0;

    Не хватает боковых рамок и разделителей между иконками и названий ссылок.

    Рисуем правую рамку у тега a , который является строчным элемент, а вокруг строчного элемента рамку нельзя сделать. Поэтому отображаем тег a блочным элементом.

    Ul li a {
    display: block;
    }

    Теперь можно и рамку задать, убрать подчеркивание ссылок и прописать цвет ссылок.

    Border-right: 1px solid #131313;
    text-decoration: none;
    color: #131313;

    Не хватает ещё левой рамки.

    Теги span - блочные элементы, внутри которых будет текст, поэтому span отобразим строчно-блочным элементом.

    Ul li a span {
    position: relative;
    display: inline-block;
    }

    Нам необходимо для первого span , внутри которого будет иконка, задать стили, отличающиеся от второго span . Для этого первый span обозначим псевдоклассом - span:nth-child(1) и стилизуем его отдельно. Установим правую и левую рамку и ширину.

    Ul li a span:nth-child(1) {
    width: 30px;
    border-left: 1px solid #131313;
    border-right: 1px solid #131313;
    }

    Иконки встанут посередине с полями по 10 пикселей во все стороны.

    Text-align: center;
    padding: 10px;

    Иконки будут темного цвета, размером 20 пикселей на красном фоне.

    Color: #131313;
    font-size: 20px;
    background: #f44336;

    Во втором псевдоклассе, надо задать только поля.

    Ul li a span:nth-child(2) {
    padding: 10px;
    }

    Теперь вертикальное меню приняло свой окончательный вид. Смотрите весь код и результат.

    В этом посте мы сделаем фиксированное боковое информационное меню. Для реализации иконок подключим шрифт .

    Шаг 1. Подключаем шрифт с иконками, создаем пустой документ

    Подробную инфу о работе со шрифтом FontAwesome и ссылку на сам проект вы можете найти в моем посте – .

    Вот код странички с подключенными файлами:

    Фиксированное боковое меню

    Шаг 2. Добавляем HTML разметку фиксированного меню

    Вот и сам код разметки нашего фиксированного меню:

    Как вы заметили я применил тег

    Шаг 3. Добавляем HTML разметку подменю

    Подменю как представляет собой такой же список как и основное меню, плюс тег , который выводит иконку “каретки слева”, выполняет функцию некого “хвостика”, более подробнее на картинке ниже 🙂


    Также этот элемент соединяет пустоту между блоком меню и подменю, тем самым позволяя нам осуществить возможность перехода.

    Шаг 4. Прописываем стили для фиксированного бокового меню

    Код стилей я постарался прокомментировать в местах где это имеет значение. В целом все не прокомментированные моменты относятся к банальной стилизации фона, цвета и т.д.

    #sidebar-menu { position: fixed; /* фиксируем наше меню */ top: 200px; /* положение меню относительно верхнего края браузера */ left: 0; /* прилипили меню к левому краю */ padding: 10px; background: #323A45; color: #FFF; border-radius: 0 8px 8px 0; } #sidebar-menu li { position: relative; cursor: pointer; } #sidebar-menu li i { /* Задаем иконкам фиксированный размер, height и line-height должны быть одинаковыми */ width: 27px; height: 27px; line-height: 27px; border-radius: 4px; background: #3CB7E7; text-align: center; } #sidebar-menu li+li {margin-top: 4px;} #sidebar-menu b { display: none; position: absolute; /* позиция относительно левого края равна ширине эл-та li */ left: 27px; top: 0; height: 27px; /* ширина равна зазору между блоком меню и подменю */ width: 16px; line-height: 27px; background: transparent; color: #323A45; /* саму иконку позиционируем вправо, чтобы визуально она смотрелась вместе с блоком подменю */ text-align: right; } #sidebar-menu li > ul { display: none; position: absolute; top: -10px; left: 42px; width: 120px; padding: 10px; background: #323A45; border-radius: 8px; } #sidebar-menu li:hover b, #sidebar-menu li:hover ul {display: block;} #sidebar-menu li a { display: block; padding: 4px 8px; border-radius: 4px; color: #FFF; -webkit-transition: all .2s; -moz-transition: all .2s; -ms-transition: all .2s; -o-transition: all .2s; transition: all .2s; } #sidebar-menu li a:hover { display: block; background: #3CB7E7; }

    Если по стилизации у вас есть вопросы пишите в комментарии к этому посту, с удовольствием отвечу.
    Вот и все! Фиксированное боковое меню готово 🙂

    Существует масса готовых решений для создания таких панелей с помощью jQuery, отдельные плагины и модули для различных систем управления сайтом.
    Это всё очень даже хорошо, но можно ли, для реализации боковых слайд-панелей обойтись исключительно средствами CSS? Конечно можно! Но осторожно))), с оглядкой на то, что не все браузеры одинаково хорошо поддерживают современные свойства CSS3.

    Не так давно, «выдал на-гора» решение и пример работы . Один из первых комментариев был таким: «давайте её в бок переместим...». Почему-бы и нет? Давайте)).

    Сегодня расскажу и покажу на примере, как с помощью «магии CSS» можно забабахать, вполне себе функциональное, меню, по клику.
    Для начала, по заведённой традиции, смотрим живой пример работы панели, далее, вместе с теми кому оно надо, рассмотрим весь расклад, что, как и зачем. Предвидя вопросы, приготовил варианты расположения меню, как слева, так и справа:

    HTML-Разметка

    Начнём разбор с переключателя панели, в качестве которого используем стандартный флажок ():

    Располагаем чекбокс в верхней части документа, лучше сразу после тега . Прописываем атрибут hidden , напрямую указывая состояние «скрытый» у данного элемента, а так же присвоим уникальный идентификатор, id="nav-toggle" например, для связки с атрибутом for тега

    В качестве обёртки содержимого боковой панели использовал тег