我试图在这个ul中给标签宽度为20%,但我无法做到。任何帮助将不胜感激。我可以设置li项的宽度,但我希望将宽度设置为<a>
。
<nav>
<ul class="navigation">
<li class="main_nav_li"><a href="index.html">Home</a></li>
<li class="main_nav_li"><a href="#">About</a></li>
<li class="main_nav_li"><a href="#">Services</a></li>
<li class="main_nav_li"><a href="#">Stylist</a></li>
<li class="main_nav_li"><a href="#">Contact</a></li>
</ul>
</nav>
<style>
nav{
width:98%;
border: 1px solid black;
overflow:hidden;
height:3em;
}
.nav{
list-style-type:none;
margin:0;
padding:0;
overflow: hidden;
}
li{
list-style-type: none;
float: left;
padding-top: 1em;
}
a{
width: 20%;
text-align: center;
line-height: 10%;
font-size: 1em ;
text-decoration:none;
padding-top: 0.5em;
font-family: 'Happy Monkey', cursive;
}
</style>
答案 0 :(得分:3)
您无法为内联元素设置宽度。
添加display: inline-block;
,它将起作用
a{
width: 20%;
text-align: center;
line-height: 10%;
font-size: 1em ;
text-decoration:none;
padding-top: 0.5em;
font-family: 'Happy Monkey', cursive;
display: inline-block;
}
答案 1 :(得分:1)
默认情况下,它们是内联元素。你必须使用:
display: inline-block;
块级元素允许您设置宽度,内联元素则不允许。
答案 2 :(得分:1)
这是一个有效的例子:
我必须将width
和display:inline-block
应用于li
:
li{
list-style-type: none;
float: left;
width: 20%;
display: inline-block;
}