iPhone css悬停应该恢复正常'unhover'

时间:2013-04-09 20:09:23

标签: iphone css hover back mode

我正在开发适用于iPhone的网络应用程序......

我使用以下CSS创建了一个“按钮”,当你点击它时(:悬停)它会发生变化,但是当你发布时,它应该恢复正常模式......我该怎么做?

.button {
height:40px;
width:95px;
margin-top:10px;
float:left;
overflow:hidden;
margin-left:14px;
background-image: -webkit-linear-gradient(bottom, #558544 0%, #5EA83D 100%);
border-radius: 12px;
border-style:solid;
border-color:#558544;
border-width:5px; }

.button:hover {
    background-image: -webkit-linear-gradient(bottom, #5EA83D 0%, #558544 100%);
}

1 个答案:

答案 0 :(得分:2)

在CSS中悬停不起作用。相反,您将不得不使用特定于触摸的javascript(ontouchstartontouchend)并将一些类添加到代表“向下”状态的按钮。

例如像这样的HTML

<div class="button" ontouchstart="buttonTouchStart(event)" ontouchend="buttonTouchEnd(event)" ></div>

和javascript一样

var buttonTouchStart = function(e) {
    var t = e.target;
    t.className = "button down";
}

var buttonTouchEnd = function(e) {
    var t = e.target;
    t.className = "button";
}

您可能还应该使用媒体查询来禁用Javascript所针对的设备的悬停CSS。