为什么我的元素标签不会影响链接?正确的语法?

时间:2013-09-06 23:35:00

标签: html css html5 css3 navigation

为什么我的元素标签不会影响链接?正确的语法?我有导航链接,由于某种原因,css属性不会以任何方式影响我的链接,任何原因?我还希望链接仅在id #nav中生效,没有其他标签会像我正在尝试的那样受到影响。

CSS代码:

a#nav:link, a#nav:visited, a#nav:active{color:#FFB405;text-decoration:none;font-weight:bold;} /*doesnt work... why?*/
a#nav:hover{background-color:#FFB405;color:#FFFFFF;text-decoration:none;font-weight:bold;}

HTML CODE

<!--NAVIGATION-->
    <ul id="nav">
        <li><a href="index.html">Home</a></li>
        <li><a href="about.html">About</a></li>
        <li><a href="portfolio.html">Portfolio</a></li>
        <li><a href="projects.html">Projects</a></li>
        <li><a href="contact.html">Contact</a></li>
        <li><a href="classlist.html">Class List</a></li> <!--change URL later-->
    </ul>

7 个答案:

答案 0 :(得分:5)

a#nav不正确。试试#nav a。此语法的目标是a,它是#nav的后代。您的语法定位a id="nav"

答案 1 :(得分:1)

您的CSS选择器错误。

a#nav:link, ...

但它应该是

#nav a:link, ...

答案 2 :(得分:1)

尝试将css更改为:

#nav a:link, #nav a:visited, #nav a:active{color:#FFB405;text-decoration:none;font-weight:bold;} /*doesnt work... why?*/
#nav a:hover{background-color:#FFB405;color:#FFFFFF;text-decoration:none;font-weight:bold;}

http://jsfiddle.net/WMLx7/

答案 3 :(得分:1)

您已设置a#navnav ID设置为父ul。 请改为ul#nav li a

http://jsfiddle.net/Ek2DT/

答案 4 :(得分:0)

更改此

a#nav:link to #nav a:link

答案 5 :(得分:0)

当你使用它时:a#nav它意味着<a id="nav...,但你有类似的东西:

 <ul id="nav">
    <li><a href="index.html">Home</a></li>

所以使用:

#nav a { // and add its properties like link, hover, active!

答案 6 :(得分:0)

你遇到的主要问题是你应该使用#avan #nav a。

导航a引用标识为'nav'的标记并选择所有标记。