我正在尝试创建一个带有页面链接的导航栏,但是搜索' bar不会与其他列表元素水平转移:
HTML
<header class="nav">
<ul class="main">
<li><a href="page1">page1</a></li>
<li><a href="page2">page2</a></li>
<li><a href="page3">page3</a></li>
<li>
<form>
<input type="text" placeholder="Search..." required>
<a href="#" class="button" id="searchbut">Search</a>
</form>
</li>
</ul>
</header>
CSS
nav {
height:100px;
width:100%;
}
li {
display:inline;
list-style:none;
}
答案 0 :(得分:3)
在CSS中将表单display
设置为inline-block
。块级元素不允许其他元素位于其水平空间。
form {
display: inline-block;
}
答案 1 :(得分:1)
将表单display
设置为inline
。由于默认情况下它是块级元素,因此它在整个可用宽度内占用自己的空间。
nav {
height: 100px;
width: 100%;
}
li {
display: inline;
list-style: none;
}
form {
display: inline;
}
&#13;
<header class="nav">
<ul class="main">
<li><a href="page1">page1</a>
</li>
<li><a href="page2">page2</a>
</li>
<li><a href="page3">page3</a>
</li>
<li>
<form>
<input type="text" placeholder="Search..." required>
<a href="#" class="button" id="searchbut">Search</a>
</form>
</li>
</ul>
</header>
&#13;
答案 2 :(得分:0)
这里有一些例子:
nav {
height:100px;
width:100%;
}
li, li > form {
display:inline;
list-style:none;
}
nav {
height:100px;
width:100%;
}
li, li > form {
display:inline;
list-style:none;
margin-right: 10px;
}
li:last-child > form{
margin-right: 0px;
}
nav {
height:100px;
width:100%;
}
li, li > form {
display:inline;
list-style:none;
margin-right: 10px;
}
li:last-child > form{
margin-right: 0px;
}
li:last-child{
float:right;
}
LEFT 中右侧搜索栏上的nav {
height:100px;
width:100%;
}
li, li > form {
display:inline;
list-style:none;
margin-right: 10px;
}
li:last-child > form{
margin-right: 0px;
}
li:nth-child(n){
float:right;
}
li:last-child{
float:left;
}