![]() |
Категория: CSS |
Название: Стильное меню | |
Дата добавления: 08-05-2012 | |
Раз просмотрено: 739 | |
Комментарии: 0 | |
Рейтинг: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Стильное меню
Один из самых распространенных элементов веб-сайта или дизайна веб-приложения — это, определенно, навигационное меню. И не важно, какое оно, горизонтальное или вертикальное, простое или сложное, меню важно, и должно выглядеть соответственно. В этой статье я покажу вам, как создать очень стильное меню при помощи некоторых CSS3 трюков.
Кнопки этого меню аналогичны с кнопкой для скачивания на сайте Lesscss.org. Демо вы можете посмотреть на этой странице. А вот так будет выглядеть наше законченное навигационное меню:
Стильное меню на CSS
HTML
Вот весьма простой и семантический код нашего стильного меню. Чуть позже вы поймете, зачем нам необходимы элементы <span>
.
<div id="navigation"> <ul> <li><a href="#"><span>Главная</span></a></li> <li><a href="#"><span>Разделы</span></a></li> <li><a href="#"><span>О нас</span></a></li> <li><a href="#"><span>Портфолио</span></a></li> <li><a href="#"><span>Контакты</span></a></li> </ul> </div>
CSS
Вот CSS код нашей навигации, и, как вы видите, элемент <span>
используется для дополнительных эффектов и создания бортика:
#navigation ul { padding: 0; margin: 0; list-style: none; } #navigation li { float: left; } #navigation a { float: left; color: #EEE; margin: 0 5px; padding: 3px; text-decoration: none; border: 1px solid #831608; font: bold 14px Arial, Helvetica; background-color: #831608; background-image: -moz-linear-gradient(#BB413B, #831608); background-image: -webkit-gradient(linear, left top, left bottom, from(#BB413B), to(#831608)); background-image: -webkit-linear-gradient(#BB413B, #831608); background-image: -o-linear-gradient(#BB413B, #831608); background-image: -ms-linear-gradient(#BB413B, #831608); background-image: linear-gradient(#BB413B, #831608); -moz-border-radius: 5px; -webkit-border-radius: 5px; border-radius: 5px; text-shadow: 0 -1px 0 rgba(0,0,0,.8); -moz-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.3), 0 3px 0 rgba(0, 0, 0, 0.7), 0 2px 2px rgba(0, 0, 0, 0.5), 0 1px 0 rgba(255, 255, 255, 0.5) inset; -webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.3), 0 3px 0 rgba(0, 0, 0, 0.7), 0 2px 2px rgba(0, 0, 0, 0.5), 0 1px 0 rgba(255, 255, 255, 0.5) inset; box-shadow: 0 1px 0 rgba(255, 255, 255, 0.3), 0 3px 0 rgba(0, 0, 0, 0.7), 0 2px 2px rgba(0, 0, 0, 0.5), 0 1px 0 rgba(255, 255, 255, 0.5) inset; } #navigation a:hover { background-color: #BB413B; background-image: -moz-linear-gradient(#831608, #BB413B); background-image: -webkit-gradient(linear, left top, left bottom, from(#831608), to(#BB413B)); background-image: -webkit-linear-gradient(#831608, #BB413B); background-image: -o-linear-gradient(#831608, #BB413B); background-image: -ms-linear-gradient(#831608, #BB413B); background-image: linear-gradient(#831608, #BB413B); } #navigation a:active { background: #BB413B; position: relative; top: 2px; -moz-box-shadow: 0 0 3px rgba(0, 0, 0, 0.7) inset; -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.7) inset; box-shadow: 0 0 3px rgba(0, 0, 0, 0.7) inset; } #navigation span { border: 1px dashed #eba1a3; display: inline-block; padding: 4px 15px; cursor: pointer; background-color: #BB413B; background-image: -moz-linear-gradient(#d4463c, #aa2618); background-image: -webkit-gradient(linear, left top, left bottom, from(#d4463c), to(#aa2618)); background-image: -webkit-linear-gradient(#d4463c, #aa2618); background-image: -o-linear-gradient(#d4463c, #aa2618); background-image: -ms-linear-gradient(#d4463c, #aa2618); background-image: linear-gradient(#d4463c, #aa2618); } #navigation a:hover span { background-color: #BB413B; background-image: -moz-linear-gradient(#aa2618, #d4463c); background-image: -webkit-gradient(linear, left top, left bottom, from(#aa2618), to(#d4463c)); background-image: -webkit-linear-gradient(#aa2618, #d4463c); background-image: -o-linear-gradient(#aa2618, #d4463c); background-image: -ms-linear-gradient(#aa2618, #d4463c); background-image: linear-gradient(#aa2618, #d4463c); }
Преимущества
- Кроссбраузерность. Это стильное меню правильно отображается во всех современных браузерах.
- Масштабируемость. Мы можем изменить размер элементов меню, просто изменяя размер шрифта в CSS файле.
- Отсутствие изображений. Меньше HTTP-запросов, а значит время загрузки меньше, легче изменять и обновлять.
В итоге можно сказать, что наше стильное меню не является чем-то сверх сложным или высокотехнологичным. Главная цель — это пример того, какие интересные эффекты CSS3 дает возможность использовать нам, вместо использовавшихся раньше изображений.
Это интересно: «Всплывающие уведомления».
Ваш комментарий будет первым.