5. iphone 的:active样式

如果给按钮定义 :hover 样式,在 iPhone 上按钮点击一次是 hover 态,再点击一次 hover 态才会消失,这不是我们想要的,继而想通过定义 :active 样式来实现按钮按下时的效果,但定义的 active 样式在 iPhone 上点击时没有任何效果

只需添加一段 js 即可:

document.addEventListener("touchstart"function() {},false);

另一个方案,可以在 body 上添加 ontouchstart=""

<body ontouchstart="">

原理:Safari 默认禁用了元素的 active 样式,我们通过声明 touchstart  来覆盖默认事件,就可以让 active  样式重新激活。

此外,默认点击按钮会有一个灰色的外框,通过这段 CSS 可以清除:

html {
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}
posted @ 2018-03-13 16:22  大耳朵小虎  阅读(205)  评论(0编辑  收藏  举报