我如何使这个响应式导航栏正常工作?
how do i make this responsive nav bar work properly?
我正在尝试用这 4 个元素制作响应式导航栏。但是,如果我将浏览器窗口拖动到某个点,它就会开始将 4 个中的一个放在其余的下方。但我不知道我做错了什么。
HTML:
<div id="nav">
<ul>
<li class="blue"><a href="#">Home</a></li>
<li class="blue"><a href="#">Trailer</a></li>
<li class="red"><a href="#">Gallery</a></li>
<li clas="red"><a href="#">Contact Us</a></li>
</ul>
</div>
CSS:
#nav {
width: 100%;
background-color:transparant;
}
#nav ul {
width: 85%;
max-width: 1200px;
padding: 0;
margin: 0 auto;
list-style: none;
text-align: center;
}
#nav ul li {
display: inline-table;
width: 24%;
padding: 4px;
background-color:#242424;
border-radius: 5px;
}
#nav ul li a {
color:white;
text-decoration: none;
width: 100%;
padding-top: 10px;
padding-bottom: 10px;
display: inline-block;
border-radius: 5px;
}
您的填充可能有问题。
为此,在您的列表中添加 box-sizing 属性,填充将包含在元素的宽度中,例如:
#nav ul li {
display: inline-table;
width: 24%;
padding: 4px;
background-color:#242424;
border-radius: 5px;
box-sizing: border-box;
}
Fiddle: http://jsfiddle.net/begyu5v3/
信息:http://www.w3schools.com/cssref/css3_pr_box-sizing.asp
你的 lis 之间有那些不受欢迎的空白。在这个link中,有一些方法可以避免这个问题,比如font-size:
#nav ul {
font-size: 0;
}
#nav ul li {
font-size: 16px;
}
试一试,如果有帮助请告诉我!
我正在尝试用这 4 个元素制作响应式导航栏。但是,如果我将浏览器窗口拖动到某个点,它就会开始将 4 个中的一个放在其余的下方。但我不知道我做错了什么。
HTML:
<div id="nav">
<ul>
<li class="blue"><a href="#">Home</a></li>
<li class="blue"><a href="#">Trailer</a></li>
<li class="red"><a href="#">Gallery</a></li>
<li clas="red"><a href="#">Contact Us</a></li>
</ul>
</div>
CSS:
#nav {
width: 100%;
background-color:transparant;
}
#nav ul {
width: 85%;
max-width: 1200px;
padding: 0;
margin: 0 auto;
list-style: none;
text-align: center;
}
#nav ul li {
display: inline-table;
width: 24%;
padding: 4px;
background-color:#242424;
border-radius: 5px;
}
#nav ul li a {
color:white;
text-decoration: none;
width: 100%;
padding-top: 10px;
padding-bottom: 10px;
display: inline-block;
border-radius: 5px;
}
您的填充可能有问题。
为此,在您的列表中添加 box-sizing 属性,填充将包含在元素的宽度中,例如:
#nav ul li {
display: inline-table;
width: 24%;
padding: 4px;
background-color:#242424;
border-radius: 5px;
box-sizing: border-box;
}
Fiddle: http://jsfiddle.net/begyu5v3/
信息:http://www.w3schools.com/cssref/css3_pr_box-sizing.asp
你的 lis 之间有那些不受欢迎的空白。在这个link中,有一些方法可以避免这个问题,比如font-size:
#nav ul {
font-size: 0;
}
#nav ul li {
font-size: 16px;
}
试一试,如果有帮助请告诉我!