Автор

07 04.2013
Выпадающее меню с помощью CSS3

Выпадающее меню с помощью CSS3


 

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

 

ДЕМО
ИСХОДНИКИ

 

Кроме того меню красочное, что позволяет ему отлично вписаться в любой дизайн сайта, кроме этого можно легко настроить навигацию под себя. Кроме этого будут применены маленькие иконки, для этого достаточно задействовать элемент :before в таблице. И так, приступим.

Шаг 1. HTML

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

<nav id="colorNav">
 <ul>
 <li class="green">
 <a href="#" class="icon-home"></a>
 <ul>
 <li><a href="#">Подпункт 1</a></li>
 <li><a href="#">Подпункт 2</a></li>
 <!-- Другие выпадающие пункты -->
 </ul>
 </li>

<!-- Другие пункты меню -->

</ul>
</nav>

 

С разметкой закончили, теперь перейдем к стилям.

Шаг 2. CSS

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

#colorNav > ul{
	width: 450px;
	margin:0 auto;
}

 

Далее установим ширину поля для неупорядоченного списка, который является подпунктом #colorNav.

#colorNav > ul > li{ /* стили только для элементов li верхнего уровня */
	list-style: none;
	box-shadow: 0 0 10px rgba(100, 100, 100, 0.2) inset,1px 1px 1px #CCC;
	display: inline-block;
	line-height: 1;
	margin: 1px;
	border-radius: 3px;
	position:relative;
}

 

Теперь установим значение inline-block для свойства display, при этом элемент ссылки содержит иконку, которая определяется шрифтом Font Awesome.

#colorNav > ul > li > a{
	color:inherit;
	text-decoration:none !important;
	font-size:24px;
	padding: 25px;
}

 

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

#colorNav li ul{
	position:absolute;
	list-style:none;
	text-align:center;
	width:180px;
	left:50%;
	margin-left:-90px;
	top:70px;
	font:bold 12px 'Open Sans Condensed', sans-serif;

	/* Важно для анимации вывода/скрытия */
	max-height:0px;
	overflow:hidden;

	-webkit-transition:max-height 0.4s linear;
	-moz-transition:max-height 0.4s linear;
	transition:max-height 0.4s linear;
}

 

Теперь необходимо запустить анимацию.

#colorNav li:hover ul{
	max-height:200px;
}

 

Теперь зададим стили для выпадающего списка.

#colorNav li ul li{
	background-color:#313131;
}

#colorNav li ul li a{
	padding:12px;
	color:#fff !important;
	text-decoration:none !important;
	display:block;
}

#colorNav li ul li:nth-child(odd){ /* полоски зебры */
	background-color:#363636;
}

#colorNav li ul li:hover{
	background-color:#444;
}

#colorNav li ul li:first-child{
	border-radius:3px 3px 0 0;
	margin-top:25px;
	position:relative;
}

#colorNav li ul li:first-child:before{ /* указатель подсказки */
	content:'';
	position:absolute;
	width:1px;
	height:1px;
	border:5px solid transparent;
	border-bottom-color:#313131;
	left:50%;
	top:-10px;
	margin-left:-5px;
}

#colorNav li ul li:last-child{
	border-bottom-left-radius:3px;
	border-bottom-right-radius:3px;
}

 

Далее разукрасим элементы меню.

#colorNav li.green{
	/* Цвет пункта меню */
	background-color:#00c08b;

	/* Цвет иконки */
	color:#127a5d;
}

#colorNav li.red{		background-color:#ea5080;color:#aa2a52;}
#colorNav li.blue{		background-color:#53bfe2;color:#2884a2;}
#colorNav li.yellow{	background-color:#f8c54d;color:#ab8426;}
#colorNav li.purple{	background-color:#df6dc2;color:#9f3c85;}

 

Со стилями закончили, ничего сложного.

Вот и все. Готово!

Материал взят из зарубежного источника. И представлен исключительно в ознакомительных целях.


vk.com/club.ssdru

Подписывайтесь на нашу группу в контакте vk.com/club.ssdru


Статьи по темеCSS3

11 09.2017
Выпадающее меню с помощью CSS3

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


31 03.2013
Выпадающее меню с помощью CSS3

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


31 03.2013
Выпадающее меню с помощью CSS3

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


24 06.2017
Выпадающее меню с помощью CSS3

Вторичная панель содержимого, которая складывается плотно, поддерживается CSS-преобразованиями и jQuery.


105 Публикаций

Раскрутка в соцсетях

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


Перейти в Блог

О КОМПАНИИ

Studio Design существует с 2001 года. Основной нашей деятельностью до 2007 года было видеопроизводство ( видеореклама и документальные фильмы, о чем подробно описано в нашем блоге ). С 2007 года, вот уже как лет, наша основная специфика - это создание сайтов для бизнеса или частной деятельности, веб дизайн, а также поддержка и администрирование готовых проектов. Каждая выполненная нами работа - это уникальный, а самое главное, адаптивный под все современные мобильные устройства дизайн сайта. Мы готовы создать сайт с нуля для каждого клиента с любого уголка России! Мы поможем Вам в создании, как одностраничных сайтов – визиток, так и крупных интернет магазинов или корпоративных сайтов. А все наши работы, большинство из которых действуют и по сей день!

Close

Целовальников Сергей


Веб-дизайн, HTML5, CSS3, jQuery, JavaScript, Верстка.

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

Close