如何指示带有链接的LI被按下。

时间:2013-04-18 13:00:33

标签: html css html-lists selected

我做了一个菜单,想要按下一个不同颜色的按钮。 I.E.如果我在菜单页面,菜单的菜单按钮将为蓝色。

我已经阅读了一些关于菜单的在线指南,最后得到了以下内容:

<div id="menu">

<ul>

    <li>
        <a href="/index.php" >home</a>
    </li>
    <li>
        <a href="/search.php" >search</a>
    </li>
    <li>
        <a href="#">1</a>
    </li>
    <li>
        <a href="#">2</a>
    </li>
    <li>
        <a href="#">3</a>
    </li>

</ul></div>

CSS就是这样的:

#menu ul li a.selected{
background:blue;
color:#000;
}

当然每个LI都有高度和东西,所以它有一些颜色。问题是如何告诉HTML按钮被选中? HTML属性还是什么?

我遇到的另一个困境是如何最好地改变这些选择?我可以使用PHP检查地址并根据它更改所选的地址。有什么建议如何做到最好吗?

4 个答案:

答案 0 :(得分:0)

在css中使用a:visited。只有在

之前使用链接时才会复制它

答案 1 :(得分:0)

您可以在css中使用a:visiteda:active。 单击它后它变为active。如果您之前访问过它,它会变为visited

如果你想操纵按钮,可以考虑使用JavaScript(最好是jQuery),然后你可以根据动作轻松改变元素属性(例如onclick)。

答案 2 :(得分:0)

尝试:有效且:专注

#menu ul li a:active,#menu ul li a:focus{
    background:blue;
    color:#000;
}

答案 3 :(得分:0)

你可以选择:

<li>
<a href="/search.php" 
<?php 
    if(strstr($_SERVER["REQUEST_URI"], "YOURPATH/index.php")) 
      echo "class='selected'";
?>
> Home </a>
</li>

或使用等效的Javascript“document.URL”。 可能不是最干净的解决方案,但应该做的事情。