1

我的整个网站都有一个 css 文件。例如,在该 css 文件中,我为所有参考链接定义了以下样式,例如:

a{
   color: #333;
   padding-right: 3px;
   padding-left: 3px;
   text-decoration: underline;
   outline-width: medium;
   outline-style: none;
   outline-color: invert;
}

a:link, a:visited, a:active, a:hover{
   color: #333;
}

所以我网站中的所有链接都有上述样式,但是我的页面中只有三个链接我不想应用这种样式,我的意思是,我想忽略它以便不应用,那么如何忽略样式下面的链接?

   <nav id="NavigationMenu">
            <ul id="menu">
                <li>@Html.ActionLink("Home", "Index", "Home")</li>
                <li>@Html.ActionLink("About", "About", "Home")</li>
                <li>@Html.ActionLink("Contact", "Contact", "Home")</li>
            </ul>
    </nav>

更新:

<div id="flagsGroup">
  <div id="flag">
     <a href="@Url.Action("ChangeCulture", "Home", new { lang = "es-ES", returnUrl = this.Request.RawUrl })"><img src="~/images/SpanishFlag.png" alt="Change page language to spanish."/></a>
     <a href="@Url.Action("ChangeCulture", "Home", new { lang = "ca-ES", returnUrl = this.Request.RawUrl })"><img src="~/images/CatalanFlag.png" alt="Change page language to catalan."/></a>
     <a href="@Url.Action("ChangeCulture", "Home", new { lang = "en-GB", returnUrl = this.Request.RawUrl })"><img src="~/images/BritishFlag.png" alt="Change page language to english."/></a>
  </div>
</div>
4

4 回答 4

2

只是更具体并用默认值覆盖它。

工作得很好.. jsFiddle 演示在这里

CSS

#NavigationMenu #menu li > a {
    padding:0px;
    text-decoration: none;
    outline:none;
    color:#000;
}

#NavigationMenu #menu li > a:link, 
#NavigationMenu #menu li > a:visited,
#NavigationMenu #menu li > a:active,
#NavigationMenu #menu li > a:hover{
   color: #000;
}

编辑..根据您的更新:

#flagsGroup #flags > a {
    padding: 0px;
    text-decoration: none;
    outline: none;
    color: #000;
}

#flagsGroup #flags > a:link, 
#flagsGroup #flags > a:visited,
#flagsGroup #flags > a:active,
#flagsGroup #flags > a:hover {
    color: #000;
}
于 2013-09-28T15:31:40.480 回答
2

:not您可以使用-selector排除这些链接:

http://jsfiddle.net/J2rfU/1/

a:not(#menu a) {
   color: red;
   text-decoration: underline;
}

使用此 CSS,除菜单中的链接外,所有链接都会变为红色。

根据您的更新:

a:not(#flag a) {
   color: red;
   text-decoration: underline;
}
于 2013-09-28T15:53:35.113 回答
0

您需要覆盖全局样式,简单地使它们不适用是不可能的。覆盖它们使用类似这样的东西

#menu a{        
    color: #000;
}

//和悬停等

#menu a:link, #menu a:visited, #menu a:active, #menu a:hover{
    color: #000;
}
于 2013-09-28T15:31:34.320 回答
0

如果你的 li 中有一个标签,你可以写一些类似的东西

#menu li a {
    color:red;
}
于 2013-09-28T15:32:37.550 回答