ASP.NET 按钮没有悬停状态?

Posted

技术标签:

【中文标题】ASP.NET 按钮没有悬停状态?【英文标题】:ASP.NET button does not have hover state? 【发布时间】:2011-05-13 14:59:16 【问题描述】:

我检查了链接 Asp Button hover and CSS 但令我沮丧的是,我仍然找不到将 CSS 应用于 ASP.NET 按钮的悬停状态的解决方案。

我的按钮是这样声明的:

    <asp:Button ID="btnRegister" runat="server" 
                 onclick="btnRegister_Click" CssClass="btnRegister"/>

我的按钮 CSS 是:

.btnRegister 
    background-color:#FFF;
    color:#000;

.btnRegister : hover
    border:solid 2px #000;


.btnRegister : active
    background-color:#000;
    color:#FFF;

当我检查 FF 和 IE 中的按钮时,我看到样式只在按钮上完成,而不是在悬停时在按钮上完成。

此外,我有一个皮肤文件应用于包含按钮的页面,但它应用于其他控件,而不是按钮。

有人对如何访问按钮的悬停状态有任何想法吗?

【问题讨论】:

【参考方案1】:

jQuery

$("button").hover(
  function () 
    $(this).css("your style");
  , 
  function () 
    $(this).css("origin style");
  
);

希望这能有所帮助。

【讨论】:

我试过了,它确实有效,但我想保持简单。不过感谢您的正确建议。 @fred 好像 IE 只支持 a:hover。所以你想用css来实现目标可能有点困难。 那是真的...我刚刚发现...叹息【参考方案2】:

嘿嘿,把'hover'和'active'前后的空格去掉就行了。

.btnRegister:hover
.btnRegister:active

【讨论】:

【参考方案3】:

去掉类名和伪状态之间多余的空格:

.btnRegister 
background-color:#FFF;
color:#000;

.btnRegister:hover
border:solid 2px #000;


.btnRegister:active
background-color:#000;
color:#FFF;

【讨论】:

以上是关于ASP.NET 按钮没有悬停状态?的主要内容,如果未能解决你的问题,请参考以下文章

将鼠标悬停在 ASP.NET 按钮上时显示注释

使用 css 在鼠标悬停时更改 asp.net 按钮的颜色

ASP.Net 用户控件悬停导致点击

在 ASP.NET 中设置 Twitter Bootstrap 按钮单选组的活动状态

禁用的 asp.net 按钮禁用按钮验证

Chrome 后退按钮页面刷新 - ASP.net