导航栏的伪类不起作用

时间:2016-10-28 20:05:15

标签: html css navbar

所以我有一个简单的导航栏因某些原因无效。除了这个之外,所有其他链接和页面都有效,我想知道是否有人能够在以下代码中发现错误。注意' glob'不是黄色的。我认为我在其他地方有一个更具体的规则,这个规则超越了这条规则,但我认为我没有这样的规则,我的具体要求较少。



#subnav {
	height: 10%;
	text-align: center;
	background-color: green;
	width: 100%;
}
#subnav ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
	overflow: hidden;
	text-align: center;
	width: 100%;
	font-weight: bold;
}
#subnav li {
	display: inline-block;
}
#subnav li a {
	display: block;
	color: white;
	text-align: center;
	padding: 14px 16px;
	text-decoration: none;
}
#subnav li a:hover {
	color: yellow;
}
#subnav li a:active {
	color: yellow;
}

<div id="subnav">
           	<ul>
    			<li> <a href="sam.html">Sam </a></li>
        		<li> <a href="sam.html">Sam </a></li>
    			<li> <a href="sam.html">Sam </a></li>
    			<li> <a href="sam.html">Sam </a></li>
            	<li> <a href="sam.html">Sam </a></li>
                <li> <a href="sam.html">Po </a></li>
                <li> <a class="active" href="glob.html">Glob </a></li>
                <li> <a href="sam.html">Donors </a></li>
                
    		</ul>
       </div>
&#13;
&#13;
&#13;

2 个答案:

答案 0 :(得分:1)

如果要定位活动类,则必须使用.active,而不是:active

所以规则将是:

#subnav li a.active {
  color: yellow;
}

:active伪选择器有点不同,这里有一个很好的解释https://css-tricks.com/almanac/selectors/a/active/ 但是在您的代码中,您正在添加活动类,而不是稍后在css上使用它。 希望这能帮助你。

答案 1 :(得分:1)

在你的情况下,

.active是一个,而不是一个可以通过伪选择器进行加密的状态。所以你的选择器必须是

#subnav li a.active {
        color: yellow;
    }

(请注意.而不是:

&#13;
&#13;
#subnav {
	height: 10%;
	text-align: center;
	background-color: green;
	width: 100%;
}
#subnav ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
	overflow: hidden;
	text-align: center;
	width: 100%;
	font-weight: bold;
}
#subnav li {
	display: inline-block;
}
#subnav li a {
	display: block;
	color: white;
	text-align: center;
	padding: 14px 16px;
	text-decoration: none;
}
#subnav li a:hover {
	color: yellow;
}
#subnav li a.active {
	color: yellow;
}
&#13;
<div id="subnav">
           	<ul>
    			<li> <a href="sam.html">Sam </a></li>
        		<li> <a href="sam.html">Sam </a></li>
    			<li> <a href="sam.html">Sam </a></li>
    			<li> <a href="sam.html">Sam </a></li>
            	<li> <a href="sam.html">Sam </a></li>
                <li> <a href="sam.html">Po </a></li>
                <li> <a class="active" href="glob.html">Glob </a></li>
                <li> <a href="sam.html">Donors </a></li>
                
    		</ul>
       </div>
&#13;
&#13;
&#13;