Горизонтальное меню. Основы bootstrap 3 для начинающих. Урок №10
Главная » Основы Bootstrap 3 » Горизонтальное меню. Основы bootstrap 3 для начинающих. Урок №10
05.08.2016
Всем привет!
Продолжаем изучать основы «bootstrap3».
В сегодняшнем уроке вы научитесь создавать горизонтальное меню для веб-страницы.
В предыдущих уроках вы научились создавать списки и выпадающие списки. По сути, списки можно использовать как меню, но в bootstrap есть специальные классы для создания меню.
Благодаря этим классам можно быстро, красиво, а главное, адаптивно создать меню для сайта и вы в этом сейчас сами убедитесь.
Вот так выглядит меню на компьютерах:
…а вот так на мобильных устройствах. Все элементы меню прячутся и остается только кнопка. При нажатии на кнопку появляется меню выпадающим списком:
При нажатии справа на кнопку меню, откроется выпадающий список:
Теперь сам код, а потом разберем классы, которые можно менять.
<nav role="navigation"> <div> <!-- Название компании и кнопка, которая отображается для мобильных устройств группируются для лучшего отображения при сужении --> <div> <button type="button" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1"> <span>Toggle navigation</span> <span></span><!--Полоски на кнопке--> <span></span><!--Полоски на кнопке--> <span></span><!--Полоски на кнопке--> </button> <a href="#">Brand</a> </div> <!-- Группируем ссылки, формы, выпадающее меню и прочие элементы --> <div> <ul> <li><a href="#">Link 1</a></li> <li><a href="#">Link 2</a></li> <li> <a href="#" data-toggle="dropdown">Dropdown 1<b></b></a> <ul> <li><a href="#">Action</a></li> <li><a href="#">Another action</a></li> <li><a href="#">Something else here</a></li> <li></li> <li><a href="#">Separated link</a></li> <li></li> <li><a href="#">One more separated link</a></li> </ul> </li> </ul> <form role="search"> <div> <input type="text" placeholder="Search"> </div> <button type="submit">Submit</button> </form> <ul> <li><a href="#">Link 3</a></li> <li> <a href="#" data-toggle="dropdown">Dropdown 2<b></b></a> <ul> <li><a href="#">Action</a></li> <li><a href="#">Another action</a></li> <li><a href="#">Something else here</a></li> <li></li> <li><a href="#">Separated link</a></li> </ul> </li> </ul> </div><!-- /.![]()
navbar-collapse --> </div><!-- /.container-fluid --> </nav>
Сейчас меню резиновое, так как используется класс «container-fluid» (строка №2):
<div>
Если вместо класса «container-fluid» прописать класс «container», тогда меню не будет растягиваться на всю ширину экрана, а примет ширину класса «container». О классе «container» можно почитать тут.
А вот эта часть кода отвечает за название организации (строка №11). Сюда можно смело вставлять название сайта, логотип. Также в этой части кода есть кнопка, которая появляется на мобильных устройствах (строки №5 — №10):
<div> <button type="button" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1"> <span>Toggle navigation</span> <span></span><!--Полоски на кнопке--> <span></span><!--Полоски на кнопке--> <span></span><!--Полоски на кнопке--> </button> <a href="#">Brand</a> </div>
Дальше идет список меню.
<div> <ul> <li><a href="#">Link 1</a></li> <li><a href="#">Link 2</a></li> <li> <a href="#" data-toggle="dropdown">Dropdown 1<b></b></a> <ul> <li><a href="#">Action</a></li> <li><a href="#">Another action</a></li> <li><a href="#">Something else here</a></li> <li></li> <li><a href="#">Separated link</a></li> <li></li> <li><a href="#">One more separated link</a></li> </ul> </li> </ul> <form role="search"> <div> <input type="text" placeholder="Search"> </div> <button type="submit">Submit</button> </form> <ul> <li><a href="#">Link 3</a></li> <li> <a href="#" data-toggle="dropdown">Dropdown 2<b></b></a> <ul> <li><a href="#">Action</a></li> <li><a href="#">Another action</a></li> <li><a href="#">Something else here</a></li> <li></li> <li><a href="#">Separated link</a></li> </ul> </li> </ul> </div><!-- /.navbar-collapse -->
Хочу обратить ваше внимание на строку №5:
<button type="button" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
и строку №15:
<div>
Если id этих двух строк будет совпадать, то кнопка выпадающего меню будет работать в мобильных версиях. На примере это «bs-example-navbar-collapse-1».
Теперь само меню с ссылками:
<ul> <li><a href="#">Link</a></li> <li><a href="#">Link</a></li> <li> <a href="#" data-toggle="dropdown">Dropdown <b></b></a> <ul> <li><a href="#">Action</a></li> <li><a href="#">Another action</a></li> <li><a href="#">Something else here</a></li> <li></li> <li><a href="#">Separated link</a></li> <li></li> <li><a href="#">One more separated link</a></li> </ul> </li> </ul>
Я думаю, что такое ссылка и как она создается – объяснять не нужно. Но, если кто не знает, вам сюда.
Строка № 17 – для выделения активного меню, используется класс «active»:
<li><a href="#">Link</a></li>
Строка №21 – чтобы список выпадал в мобильной версии, во вложенный список ul нужно добавить класс «dropdown-menu»:
<li> <a href="#" data-toggle="dropdown">Dropdown <b></b></a><!--Каретка--> <ul><!--Вложенный список, который будет выпадать--> <li><a href="#">Action</a></li> <li><a href="#">Another action</a></li> <li><a href="#">Something else here</a></li> <li></li><!--Разделительная линия--> <li><a href="#">Separated link</a></li> <li></li> <li><a href="#">One more separated link</a></li> </ul> </li>
Для того чтобы зафиксировать меню сверху, нужно добавить класс «navbar-fixed-top» (Строка №1):
<nav role="navigation">
Для того чтобы зафиксировать меню снизу, нужно добавить класс «navbar-fixed-bottom» (Строка №1):
<nav role="navigation">
Фух , вроде все!
Теперь поделюсь с вами несколькими кодами готовых менюшек.
Удачи, жду на следующих уроках.
А теперь готовое решение для меню на Bootstrap3:
Фиксированные навигационные меню
Меню постоянно будет находиться в верхней либо в нижней части экрана. При прокрутке страницы меню будет всегда на виду и занимать исходное положение.
Нужно добавить дополнительный класс «navbar-fixed-top» для прикрепления меню сверху или «navbar-fixed-bottom» для прикрепления меню снизу к основным классам меню «navbar» и «navbar-default».
Навигационное меню, прикрепленное к верхней части страницы
Класс «navbar-fixed-top»
<nav role="navigation"> <div> <!-- Brand and toggle get grouped for better mobile display --> <div> <button type="button" data-target="#navbarCollapse" data-toggle="collapse"> <span>Toggle navigation</span> <span></span> <span></span> <span></span> </button> <a href="#">Бренд</a> </div> <!-- Collection of nav links and other content for toggling --> <div> <ul> <li><a href="#">Главная</a></li> <li><a href="#">Статьи</a></li> <li><a href="#">Новости</a></li> </ul> <ul> <li><a href="#">Войти</a></li> </ul> </div> </div> </nav>
Навигационное меню, прикрепленное к нижней части страницы
Класс «navbar-fixed-bottom»
<nav role="navigation"> <div> <!-- Brand and toggle get grouped for better mobile display --> <div> <button type="button" data-target="#navbarCollapse" data-toggle="collapse"> <span>Toggle navigation</span> <span></span> <span></span> <span></span> </button> <a href="#">Бренд</a> </div> <!-- Collection of nav links and other content for toggling --> <div> <ul> <li><a href="#">Главная</a></li> <li><a href="#">Статьи</a></li> <li><a href="#">Новости</a></li> </ul> <ul> <li><a href="#">Войти</a></li> </ul> </div> </div> </nav>
Нефиксированное меню
Обычное меню
<nav role="navigation"> <!-- Brand and toggle get grouped for better mobile display --> <div> <button type="button" data-target="#navbarCollapse" data-toggle="collapse"> <span>Toggle navigation</span> <span></span> <span></span> <span></span> </button> <a href="#">Бренд</a> </div> <!-- Collection of nav links, forms, and other content for toggling --> <div> <ul> <li><a href="#">Главная</a></li> <li><a href="#">Статьи</a></li> <li><a href="#">Новости</a></li> </ul> <ul> <li><a href="#">Войти</a></li> </ul> </div> </nav>
Статическое меню
<nav role="navigation"> <!-- Brand and toggle get grouped for better mobile display --> <div> <button type="button" data-target="#navbarCollapse" data-toggle="collapse"> <span>Toggle navigation</span> <span></span> <span></span> <span></span> </button> <a href="#">Бренд</a> </div> <!-- Collection of nav links and other content for toggling --> <div> <ul> <li><a href="#">Главная</a></li> <li><a href="#">Статьи</a></li> <li><a href="#">Новости</a></li> </ul> <ul> <li><a href="#">Войти</a></li> </ul> </div> </nav>
Как поменять цвет меню?
В строку №1 к классу «navbar» добавьте дополнительно любой придуманный класс, например «red»:
<nav role="navigation">
Теперь между тегами <head></head> добавьте код CSS:
<style> .red { background: #cc0000;} li.active a { background-color: #5a0202 !important;} ul.nav.navbar-nav a {color: #fff !important;} </style>
Кто не знает CSS, вам сюда.
Это все! В следующем уроке мы продолжим изучать основы Bootstrap 3.
Horizontal Menu Advancer — CSS Menu Tools
Расширьте возможности Dreamweaver с помощью нашего расширения Dreamweaver. Horizontal Menu Advancer — это мощный инструмент, который позволяет вам создавать, управлять и оптимизировать навигацию по меню CSS вашего веб-сайта.
Horizontal Menu Advancer включает в себя библиотеку предварительно созданных, профессионально разработанных шаблонов меню, которые можно легко настроить с помощью интуитивно понятного интерфейса в соответствии с вашими уникальными потребностями без ручного кодирования.
Вы также можете скачать дополнительные темы меню с нашего сайта. Вы можете создать столько уровней меню, сколько вам нужно, без каких-либо ограничений. С помощью нашего продукта вы можете настроить горизонтальное выпадающее меню одним щелчком мыши, чтобы оно было одним горизонтальным уровнем с выпадающими списками или двумя горизонтальными уровнями с выпадающими списками или без них.
Ключевые особенности Horizontal Menu Advancer
Вы можете изучить все возможности меню CSS, прежде чем заказывать продукт с 15-дневной полнофункциональной пробной версией
Easy-To-Use
Интуитивно понятный интерфейс делает вашу работу более эффективной. Экономьте свое время и деньги, так как не требует знания JavaScript/CSS. Поддержка перетаскивания упрощает процесс создания меню CSS Расширенное управление цветом упрощает настройку цвета. Простой импорт/экспорт структуры меню CSS
Неограниченное количество уровней
Поддерживаемые шаблоны — вы можете легко применить свое меню ко всем страницам вашего сайта, если поместите его в шаблон Dreamweaver, который применяется к этим страницам совместимый код CSS и HTML
Кросс-браузерная совместимость
- Horizontal Menu Advancer создает меню CSS, соответствующие веб-стандарту Меню CSS
- , созданные с помощью Horizontal Menu Advancer, совместимы со всеми современными браузерами для ПК/Mac, например.
Internet Explorer, Firefox, Opera, Safari (включая версии для iPhone и iPad), Chrome
Поисковая оптимизация
- Вы можете существенно сократить время загрузки своего веб-сайта, используя навигацию по меню с помощью CSS Меню, созданное с помощью нашего продукта, сделает ваш веб-сайт хорошо оптимизированным для всех основных поисковых систем, таких как Google или Yahoo.
Простая в использовании система стилей
- Привлекательные предопределенные стили Усовершенствованный удобный интерфейс помогает создавать великолепно выглядящие меню CSS. Вы также можете выбрать профессионально разработанные готовые к использованию дизайны меню из библиотеки, поставляемой с нашим продуктом.
Найдите больше демонстраций в галерее горизонтального меню…
WYSIWYG Редактирование меню CSS
- Предварительный просмотр в реальном времени дает вам представление о том, как ваше меню CSS будет выглядеть в браузере.
Бесплатная пробная версия
- Вы можете оценить все функции меню CSS в течение 15 дней с помощью бесплатной полнофункциональной пробной версии.
Системные требования
- Adobe Dreamweaver для Windows 8+
Краткое руководство
-
- Краткое руководство Horizontal Menu Advancer Как использовать наши расширения с Dreamweaver CS6
- Фейсбук
- Твиттер
- Более
#accordion css, #accordion menu, #css menu, #css styles, #css templates, #dreamweaver extension, #free css menu styles, #menu free
Создание панелей навигации с помощью списков CSS | CSS Tutorial
Каждому веб-сайту нужна панель навигации, которая помогает посетителям перемещаться по веб-сайту. Обычно это достигается размещением верхней горизонтальной панели навигации или боковой вертикальной панели навигации.
Панели навигации создаются с использованием HTML-списков в сочетании с CSS, чтобы они больше походили на меню с несколькими вариантами.
Пример:
Вертикальная панель навигации
Простой список представляет собой вертикальную панель навигации, если сделать каждый элемент списка гиперссылкой.
<ул>
Приведенный выше список можно оформить, добавив несколько простых свойств CSS:
CSS:
#navbar { тип стиля списка: нет; маржа: 0; заполнение: 0; ширина: 200 пикселей; цвет фона: #EEEEEE; } ul#navbar li a { дисплей: блок; цвет: #000000; вес шрифта: полужирный; отступ: 8px 16px; текстовое оформление: нет; } ul#navbar li a:hover { цвет фона: оранжевый; цвет белый; }
Всегда предпочтительнее использовать какой-нибудь id
или класса
для обеспечения такого стиля. Потому что, если мы напрямую стилизуем элементы
ul
и li
, как показано ниже,
ul { тип стиля списка: нет; маржа: 0; заполнение: 0; ширина: 200 пикселей; цвет фона: #EEEEEE; } ли а { дисплей: блок; цвет: #000000; вес шрифта: полужирный; отступ: 8px 16px; текстовое оформление: нет; } ли а: наведите { цвет фона: оранжевый; цвет белый; }
, тогда все списки на нашем сайте будут выглядеть как панель навигации, а нам нужна только одна панель навигации на нашем сайте, поэтому мы использовали идентификатор navbar
в нашем списке, что означает, что только элемент списка с идентификатором navbar
должен быть оформлен таким образом.
ul#navbar
означает элемент списка ul
с id = "navbar"
Живой пример →
Когда мы создаем горизонтальную панель навигации, вопрос создается горизонтальной панелью навигации
2 9 как преобразовать базовый список, который является вертикальным, в горизонтальный список. Ну, это можно сделать двумя разными способами:
Использование
display:inline
Мы можем использовать свойство CSS display:inline;
, чтобы удалить разрыв строки до и после каждого элемента списка, поскольку по умолчанию элементы списка имеют свойство display:block;
добавлено к ним.
ул#навбар ли{ дисплей: встроенный; }
Живой пример →
Использование
float:left
Другой способ создания горизонтальной панели навигации — добавление float:left;
Свойство CSS для всех элементов списка. Следовательно, они выстроятся в линию.
Вот код CSS:
#navbar { тип стиля списка: нет; маржа: 0; заполнение: 0; переполнение: скрыто; цвет фона: #EEEEEE; } ул # навбар ли { плыть налево; } ul#navbar li a { дисплей: блок; цвет: #000000; вес шрифта: полужирный; отступ: 8px 16px; текстовое оформление: нет; }
Ниже мы объяснили, почему мы использовали то, что использовали в приведенном выше коде CSS, начиная с элементов списка:
-
float:left;
→ Чтобы все элементы списка перемещались влево, чтобы они отображались в линию. -
переполнение: скрыто;
→ Теперь, когда все элементы списка имеют свойствоfloat:left
, добавленное к ним, следовательно, элементы списка больше не будут находиться внутри спискаul
, в результате чего списокul
будет занимать минимальную высоту, что в этом случай нулевой. Мы применили цвет фона, чтобы продемонстрировать это. Следовательно, здесь используется хакoverflow
. Мы не использовалиoverflow:auto;
, потому что иногда добавляется полоса прокрутки, чего мы не хотим. -
дисплей: блок;
→ Используя это свойство CSS, мы делаем кликабельной всю область ссылки, а не только текст ссылки. -
отступы:8px 16px;
→ Мы добавили отступ8px 16px
, что означает, что пустое пространство8px
будет добавлено вверху и внизу ссылки, а пустое пространство16px
будет добавлено слева и справа. . Мы добавляем отступы, чтобы наше навигационное меню выглядело просторным и чистым.