我在我的网站上使用一些图片作为链接。当我将鼠标悬停在其中一张图像上时,它们会从灰色变为彩色 - 当鼠标不再悬停时它们会变回灰色。
我希望图像在激活时保持彩色。假设我单击图像,它应该保持彩色,直到单击/激活另一个链接。
这是我的代码:
HTML:
<p><a href="privileged.php" target="testframe">
<img class="grayscale" height="67" src="powerlogo.png" width="303">
</a></p>
<iframe name="testframe"></iframe>
CSS:
img.grayscale {
filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#grayscale"); /* Firefox 3.5+ */
filter: gray; /* IE6-9 */
-webkit-filter: grayscale(100%); /* Chrome 19+ & Safari 6+ */
}
a:hover img, a:focus img {
filter: none;
-webkit-filter: grayscale(0%);
}
以上在 Firefox 中按预期工作,但在 Chrome 和 IE 中无效。
我究竟做错了什么?