在我看来,Gecko有一个涉及“:active”的错误。为了说明,将其放入名为test.html的文件中:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "hxxp://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en" >
<head>
<style type="text/css">
.clickable {
border: solid black 1px;
padding: 2px;
cursor: pointer;
-moz-user-select: none;
}
.clickable:active {
background-color: gray;
}
</style>
</head>
<body>
<span class="clickable">blah</span>
</body>
</html>
现在打开它,比如FF3。跨度应该像按钮一样工作:如果你在它上面,背景会改变颜色。鼠标悬停时,它会恢复正常。
请注意,如果您在跨度内部进行了移动,将鼠标移动到浏览器窗口之外并将其释放到那里,这甚至可以工作:在鼠标停止的部分,背景为灰色。释放后,跨度恢复正常。
到目前为止一切顺利。但请尝试将其包装在一个框架中:
<html>
<frameset cols="50%, 50%">
<frame src="test.html" />
<frame src="http://google.com" />
</frameset>
</html>
加载 一个。现在,当你在跨度内进行mousedown时,将鼠标移动到框架外的任何位置,并且鼠标悬停,跨度永远保持灰色 - 即CSS认为它“永远”为“活动”。
这似乎只发生在一个框架中,并且问题没有出现在基于KHTML的浏览器中。
任何人都有解决方法吗?
答案 0 :(得分:0)
您没有正确的doctype来支持框架。这可能是问题所在。