Как я мог получить кнопки слева?
Я пытаюсь создать справочный сайт. Я использую новый фреймворк под названием "Skel". Это действительно круто, но нет конкретной документации. Мне интересно, как сделать так, чтобы кнопки на навигационной панели были рядом с названием, а не справа. Вот код, который я использую:
<header id="header" class="skel-layers-fixed">
<h1><a href="#">Reference</a></h1>
<nav id="nav">
<ul>
<li><a href="#top">Top</a></li>
<li><a href="index.html">Home</a></li>
<li><a href="page2.html">References</a></li>
<li><a href="page3.html">About</a></li>
</ul>
</nav>
</header>
Вот содержимое навигационной панели в style.css
#header nav {
height: inherit;
line-height: inherit;
position: absolute;
right: 1.25em;
top: 0;
vertical-align: middle;
}
#header nav > ul {
list-style: none;
margin: 0;
padding-left: 0;
}
#header nav > ul > li {
border-radius: 4px;
display: inline-block;
margin-left: 1em;
padding-left: 0;
}
#header nav > ul > li a {
-moz-transition: color 0.2s ease-in-out;
-webkit-transition: color 0.2s ease-in-out;
-o-transition: color 0.2s ease-in-out;
-ms-transition: color 0.2s ease-in-out;
transition: color 0.2s ease-in-out;
color: #ccc;
display: inline-block;
text-decoration: none;
}
#header nav > ul > li a:hover {
color: #fff;
}
#header nav > ul > li:first-child {
margin-left: 0;
}
#header nav > ul > li .button {
height: 2.25em;
line-height: 2.25em;
margin-bottom: 0;
padding: 0 1em;
position: relative;
top: -0.075em;
vertical-align: middle;
}
#header .container {
position: relative;
}
#header .container h1 {
left: 0;
}
#header .container nav {
right: 0;
}
1 ответ
Решение
Вам нужно будет немного изменить свой CSS. Прежде всего, укажите следующие стили для заголовка внутри заголовка:
#header h1 {
display: inline-block;
margin: 0px;
vertical-align: middle;
}
Указание display
собственностью h1
быть display: inline-block
позволяет другим элементам появляться в той же строке, что и заголовок.
Далее вам нужно будет удалить существующий CSS, который вы используете для #header nav
и используйте следующие стили:
#header nav {
display: inline-block;
vertical-align: middle;
}
Вот рабочий пример:
#header nav {
display: inline-block;
vertical-align: middle;
}
#header h1 {
display: inline-block;
margin: 0px;
vertical-align: middle;
}
#header nav > ul {
list-style: none;
margin: 0;
padding-left: 0;
}
#header nav > ul > li {
border-radius: 4px;
display: inline-block;
margin-left: 1em;
padding-left: 0;
}
#header nav > ul > li a {
-moz-transition: color 0.2s ease-in-out;
-webkit-transition: color 0.2s ease-in-out;
-o-transition: color 0.2s ease-in-out;
-ms-transition: color 0.2s ease-in-out;
transition: color 0.2s ease-in-out;
color: #ccc;
display: inline-block;
text-decoration: none;
}
#header nav > ul > li a:hover {
color: #fff;
}
#header nav > ul > li:first-child {
margin-left: 0;
}
#header nav > ul > li .button {
height: 2.25em;
line-height: 2.25em;
margin-bottom: 0;
padding: 0 1em;
position: relative;
top: -0.075em;
vertical-align: middle;
}
#header .container {
position: relative;
}
#header .container h1 {
left: 0;
}
#header .container nav {
right: 0;
}
<header id="header" class="skel-layers-fixed">
<h1><a href="#">Reference</a></h1>
<nav id="nav">
<ul>
<li><a href="#top">Top</a>
</li>
<li><a href="index.html">Home</a>
</li>
<li><a href="page2.html">References</a>
</li>
<li><a href="page3.html">About</a>
</li>
</ul>
</nav>
</header>