【发布时间】:2011-06-30 15:32:43
【问题描述】:
我正在从事一个严重依赖 :target 伪类的项目。
如果<a>标签有一个名字并且这个名字是#之后的文本并且没有其他元素的id等于#之后的文本,那么a接收到:target。
这很令人困惑,所以这里有一个例子:
<style>
* {
color: black;
}
:target {
color: red;
}
</style>
<div id="wrapper">
<ul>
<li><a href="#one" name="one">one_link</a></li>
<li><a href="#two" name="two">two_link</a></li>
<li><a href="#three" name="three">three_link</a></li>
</ul>
<div id="one">div_one</div>
<div id="two_div">div_two</div>
<div id="three_div">div_three</div>
</div>
如果您点击“one_link”,那么“div_one”会变成红色。但是,如果你点击“two_link”或“three_link”,那么它们本身就会变成红色(因为没有带有#string的id的div,但它们有#string的名称)
我想要的是 :target 类同时在锚点和 div 上工作,或者至少是一种仅在 div 被定位时选择锚点的方法。这可能可以用 Javascript 完成,但我正在尝试使用纯 css。
【问题讨论】:
标签: css target pseudo-class