CSS的:hover伪类在IE7中无法使用

5

我有一个关于CSS中的:hover伪类的问题。

我正在像这样使用它:

tr.lightRow:hover {
    color:red
} 

这个在Safari和Firefox中可以正常工作,但是在IE7中无法工作。请帮帮我。


你可能想发布一些示例代码 - Tor Valamo
你要将:hover应用到什么上? - Sampson
:hover 是一个伪类而不是属性。 - Gumbo
5个回答

5

IE7在标准模式下支持:hover,但在怪异模式下可能不支持。


我该如何激活标准模式? - Tushar Ahirrao
1
在你的文档中添加严格的!DOCTYPE以启用IE7的全部功能。 - Irongaze.com

4

3

IE 6只支持在链接上使用:hover伪类,但是IE 7支持在大多数元素上使用。

正如David所提到的,它可能不适用于怪异模式。原因是IE在怪异模式下大多回归到接近IE 4的状态,允许许多IE特定功能并删除几个符合标准的功能。

如果您想在块级元素上使用:hover功能并支持IE 6及更早版本,则可以使用链接元素,并使用CSS将其设置为块级元素。请注意,链接仅能包含内联元素(例如没有div),因此如果您想在链接中放置块级元素,则也必须使用CSS进行设置:

CSS:

.hoverlink { display: block; }
.hoverlink:hover { background: #eee; }
.hoverlink .item { display: block; }

HTML:

<a href="..." class="hoverlink">
  <span class="item">Line 1</span>
  <span class="item">Line 2</span>
  <span class="item">Line 3</span>
</a>

(您可能需要考虑使用该技术对搜索引擎的影响。如果链接只包含描述其链接内容的文本,则其影响更好。)

0

并非所有元素都支持:hover,例如它适用于<a>但在<div>上会出现问题,据我所知。


0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接