【问题标题】:Active Page : Hover Status of Sprite活动页面:Sprite 的悬停状态
【发布时间】:2011-10-06 11:18:42
【问题描述】:

我正在处理这个页面: glustik.com/dustreeproductions/index.php

我正在尝试使“活动页面”导航显示为“活动页面”。

我在标记中有一个 body_company 的身体 ID 标签。

这是第一个导航按钮的 CSS 规则:公司

background:url(../images/navigation/nav-company.png) no-repeat;
display:block;
text-decoration:none;
width:103px;
margin:20px 27px 0 20px;
height:20px;}
#nav ul li#company a:hover {
background-position:0 -20px;}
#nav ul li#company a:active {
background-position:0 -40px;}
body #body_company #company a {
background-position:0 -40px;}

相关的 HTML 标记:

body id="body_company"

我尝试了一些不同的方法,但似乎无法让它在页面上显示活动状态。

【问题讨论】:

    标签: html css navigation hover


    【解决方案1】:

    body#body_company之间有一个空格,应该是:

    body#body_company #company a {
    

    或者只是:

    #body_company #company a {
    

    编辑:另一个问题:“正常”状态#nav ul li#company a的选择器比活动选择器具有更高的特异性/值:

    #nav ul li#company a
    

    级联得分高于:

    body#body_company #company a
    

    所以你必须使用:

    #company a    /* for the normal state */
    

    或类似的东西:

    body#body_company #nav #company a    /* for the active state */
    

    如果您的 ID 是唯一的(无论如何它们应该是唯一的......),我建议您只在正常状态下使用 #company a,这已经足够具体了。

    【讨论】:

    • 我已将其更改为“#body_company #company a {”,但它似乎仍然不起作用。我已经尝试了这行代码的许多变体。还有什么可能吗?
    • @Varazi 还有特异性的问题,看我的编辑。
    • 非常感谢。我现在修好了。必须按照您的指示修复我自己的一些后续错误(标记流)。
    猜你喜欢
    • 1970-01-01
    • 2013-06-04
    • 2016-06-28
    • 1970-01-01
    • 2019-09-26
    • 2014-02-08
    • 1970-01-01
    • 2016-01-05
    • 1970-01-01
    相关资源
    最近更新 更多