html — как изменить вертикальное меню css на горизонтальное
Задавать вопрос
спросил
Изменено 5 лет, 4 месяца назад
Просмотрено 18 тысяч раз
я использую этот css для моего вертикального меню:
.vertical-nav{
ширина: 200 пикселей;
высота:авто;
стиль списка: нет;
плыть налево;
поле справа: 40px;
}
.vertical-nav li {
ширина: 200 пикселей;
высота: 25 пикселей;
поле: 5px;
отступ: 5px;
цвет фона:#666666;
граница: нет;
выравнивание текста: по центру;
плыть налево;
}
.vertical-nav li:hover{
цвет фона:#f36f25;
цвет:#FFFFFF;
}
.vertical-nav li a{
семейство шрифтов: Calibri, Arial;
размер шрифта: 18px;
вес шрифта: полужирный;
цвет:#ffffff;
текстовое оформление: нет;
}
.
vertical-nav li.current {
цвет фона:#F36F25;
}
.vertical-nav li.current a {
цвет:#FFFFFF;
}
и вот мой html:
как лучше сделать, чтобы ссылки отображались горизонтально?
- HTML
- CSS
Если вы измените ширину .vertical-nav, например, на 100%, li:s будут плавать горизонтально. Ширина навигации должна быть достаточной, чтобы уместить их все, иначе они выстроятся друг под другом.
Я удалил width:200px; и float:left from .vertical-nav и измененный float:left; От до дисплей: встроенный блок; на .vertical-nav li
Demo
.vertical-nav{
высота:авто;
стиль списка: нет;
поле справа: 40px;
}
.
vertical-nav li {
ширина: 200 пикселей;
высота: 25 пикселей;
поле: 5px;
отступ: 5px;
цвет фона:#666666;
граница: нет;
выравнивание текста: по центру;
дисплей: встроенный блок;
}
.vertical-nav li:hover{
цвет фона:#f36f25;
цвет:#FFFFFF;
}
.vertical-nav li a{
семейство шрифтов: Calibri, Arial;
размер шрифта: 18px;
вес шрифта: полужирный;
цвет:#ffffff;
текстовое оформление: нет;
}
.vertical-nav li.current {
цвет фона:#F36F25;
}
.vertical-nav li.current a {
цвет:#FFFFFF;
}
попытаться изменить ширину .vertical-nav
.vertical-nav{
высота:авто;
стиль списка: нет;
плыть налево;
заполнение: 0;
ширина: 1100 пикселей;
}
рабочая демонстрация
добавить это в li
.vertical-nav li{
...
дисплей: встроенный;
/*или */
дисплей: встроенный блок;
...
}
вы не должны устанавливать одинаковую ширину контейнера, и вы можете попытаться установить ширину контейнера автоматически
.vertical-nav{ ширина:авто; стиль списка: нет; поле справа: 40px; }
То, что вы написали, верно. Вам просто нужно изменить первый CSS, чтобы включить ul:
.vertical-nav ul {
скорее, чем:
.vertical-nav {
И дело сделано :)
Создание вертикального меню с подменю в CSS3 и HTML
DEMO
Концепция
Простые меню с использованием CSS3 и HTML5 становятся довольно популярными, поскольку для добавления анимации не требуется JQuery или JavaScript. Мы покажем, как быстро создать красивое чистое вертикальное меню с выдвигающимся подменю.
Меню будет использовать вложенный элемент
- для отображения подменю.
Разметка HTML 5
CSS
Родительский CSS
p, ul, li, div, nav
{
заполнение: 0;
маржа: 0;
}
тело
{
семейство шрифтов: Calibri;
}
#меню {
переполнение: авто;
должность: родственница;
z-индекс: 2;
}
.
родительское меню {
цвет фона: #0c8fff;
минимальная ширина: 200 пикселей;
плыть налево;
}
#меню ул
{
тип стиля списка: нет;
}
#меню уль ли а
{
отступ: 10 пикселей 15 пикселей;
дисплей:блок;
цвет:#fff;
текстовое оформление: нет;
}
#menu ul li a:hover
{
цвет фона:#007ee9;
} Меню работает очень просто. Родительский контейнер должен быть расположен относительно, чтобы подменю могло отображаться внутри него. Вам также необходимо установить z-индекс, чтобы родительское меню было над подменю (это будет описано позже). Каждый элемент
Подменю
#menu ul li:hover > ul {
слева: 200 пикселей;
-webkit-transition: осталось 200 мс для облегчения входа;
-moz-transition: осталось 200 мс облегчение;
-ms-transition: осталось 200 мс для облегчения входа;
переход: осталось 200 мс облегчение;
}
#меню ул ли > ул {
положение: абсолютное;
цвет фона: #333;
сверху: 0;
слева: -200px;
минимальная ширина: 200 пикселей;
z-индекс: -1;
высота: 100%;
-webkit-transition: осталось 200 мс для облегчения входа;
-moz-transition: осталось 200 мс облегчение;
-ms-transition: осталось 200 мс для облегчения входа;
переход: осталось 200 мс облегчение;
}
#menu ul li > ul li a:наведите курсор
{
цвет фона:#2e2e2e;
} Подменю расположено абсолютно и перемещается влево:-200px, что заставит его отображаться за пределами экрана.


vertical-nav li {
ширина: 200 пикселей;
высота: 25 пикселей;
поле: 5px;
отступ: 5px;
цвет фона:#666666;
граница: нет;
выравнивание текста: по центру;
дисплей: встроенный блок;
}
.vertical-nav li:hover{
цвет фона:#f36f25;
цвет:#FFFFFF;
}
.vertical-nav li a{
семейство шрифтов: Calibri, Arial;
размер шрифта: 18px;
вес шрифта: полужирный;
цвет:#ffffff;
текстовое оформление: нет;
}
.vertical-nav li.current {
цвет фона:#F36F25;
}
.vertical-nav li.current a {
цвет:#FFFFFF;
}
vertical-nav{
ширина:авто;
стиль списка: нет;
поле справа: 40px;
}
родительское меню {
цвет фона: #0c8fff;
минимальная ширина: 200 пикселей;
плыть налево;
}
#меню ул
{
тип стиля списка: нет;
}
#меню уль ли а
{
отступ: 10 пикселей 15 пикселей;
дисплей:блок;
цвет:#fff;
текстовое оформление: нет;
}
#menu ul li a:hover
{
цвет фона:#007ee9;
}