【问题标题】:Hover not working in FF悬停在FF中不起作用
【发布时间】:2012-09-07 12:22:47
【问题描述】:
ul {
  list-style-type: none;
  padding: 0px 5px 0px 5px;
  margin: 0px;
}

ul li {
  border-bottom: 1px solid #B9D3EE;
}

ul li a:link,
ul li a:visited,
ul li a:active {
  width: 100%;
  color: blue;
}

ul li a: hover {
  width: 100%;
  color: #ffffff;
  background-color: #B9D3EE;
}

在 IE 中,上面的代码将在悬停时突出显示整个单元格。 但在 FF 中,它只会突出显示其中的链接。 我希望 FF 像 IE 一样突出显示整个单元格。

这里是列表: 请记住,仅创建了第一个链接,因为我刚刚开始创建此列表并在发现此问题时停止对其进行测试。

<ul>
  <li><a href="">beauty</a></li>
  <li>creative</li>
  <li>Info Tech. (IT)</li>
  <li>cycle</li>
  <li>event</li>
  <li>financial</li>
  <li>legal</li>
  <li>lessons</li>
  <li>medical</li>
  <li>marine</li>
  <li>pet</li>
  <li>automotive</li>
  <li>farm+garden</li>
  <li>household</li>
  <li>labor/move</li>
  <li>MKT/COMM</li>
  <li>office</li>
  <li>skill'd trade</li>
  <li>real estate</li>
  <li>health/wellness</li>
  <li>travel/vac</li>
  <li>write/ed/tr8</li>
</ul>

非常感谢任何帮助!

【问题讨论】:

  • 不要在a:hover(或其他任何内容)之间添加空格。它应该只是a:hover。如果没有适当的空格,您将在 CSS 中遇到各种问题。 (最值得注意的是,div.cls1.cls2div.cls1 .cls2div .cls1 .cls2 大不相同。

标签: html css dom hover


【解决方案1】:

您可以将 a 元素设为块元素,这样它们将获得父元素的所有宽度(演示:http://jsfiddle.net/WasWE/)。

ul li a:link, ul li a:visited, ul li a:active {
  display: block;
  color: blue;
}

ul li a:hover {
  background-color: #B9D3EE;
  color: #ffffff;
}​

或者您可以将hover 事件添加到li 元素(演示:http://jsfiddle.net/XmwTV/):

ul li:hover {
  background-color: #B9D3EE;
}

ul li a:link, ul li a:visited, ul li a:active {
  color: blue;
}

ul li a:hover {
  color: #ffffff;
}

【讨论】:

  • 谢谢大家!块显示是关键。至于 a: hover 等之间的空格。这与我的原始代码不同。当我在这里发布时,这种格式以某种方式改变了。再次感谢!
  • 我不认为hover伪类可以在IE6上工作,所以,为了更好的向后支持,使用第一种方法?
【解决方案2】:

嗨,现在删除 anchor link css 中的 with 100% 并在 anchor 中定义 display block css

像这样

ul li a: link,
ul li a: visited,
ul li a: active {

display:block; // add this line
width:100%; // remove this line

  color: blue
}

ul li a:hover{
width:100%; //remove this line
  color: #ffffff;
  background-color: #B9D3EE;
}

Demo

【讨论】:

  • @SperanskyDanil 我没有复制过去,请在我的 asnwer 中比较你的答案
  • @SperanskyDanil 现在你编辑了答案,现在我知道你看到了我的分析器并更新了你的答案。我觉得你复制我的答案........
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-06-16
  • 2018-12-18
  • 2012-09-21
  • 2013-01-19
  • 2013-04-13
相关资源
最近更新 更多