有效的PhoneGap CSS: WebKit Tap Highlight Color
原文链接:文章1:http://phonegap-tips.com/articles/essential-phonegap-css-webkit-tap-highlight-color.html(此文非直译)
因为文章2:http://www.mobify.com/blog/beginners-guide-to-perceived-performance/ 这篇文章提供了四种方法,让你的移动web提升“感知性能”,看起来更像是原生app。
这四种方法中第一种是给button增加触摸状态,“为了让你的网站看起来更快,你需要让你的button在用户触摸以后立即反应,这样会让用户觉得发生了什么,而不是在等待。”
利用的方法也就是CSS3的新属性:-webkit-tap-highlight-color
在PC的web上,会有鼠标悬停在页面上,按下鼠标以后也会有反馈。而在移动设备上,利用手指点击,目标小,手指触摸以后,如果目标没有反馈,用户会不知道是否点击了相应的地方,是应该等待,还是应该再次点击。
假设在你的移动web页面上有这样的代码:
<a class="html5logo" href="javascript:void(0);"></a>
css如下:
.html5logo {
display: block;
width: 128px;
height: 128px;
background: url(/img/html5-badge-128.png) no-repeat;
}
这个链接会有默认的点击连接样式,如下图:

在phonegap中希望把这个灰色的默认高亮色去掉。实际上,当我们利用命令行创建phonegap项目的时候,默认的tap高亮颜色就已经自动帮我们去掉了。
简单的利用-webkit-tap-highlight-color 属性就可以实现透明的颜色
.html5logo {
display: block;
width: 128px;
height: 128px;
background: url(/img/html5-badge-128.png) no-repeat;
-webkit-tap-highlight-color: rgba(0,0,0,0);
-webkit-tap-highlight-color: transparent; /* For some Androids */
}
因为是CSS,所以可以利用它去掉整个项目的tap颜色高亮,也可以只单独的使用在需要去掉颜色的元素上。去掉颜色以后,当然也需要给用户以反馈,所以我们考虑了用:active伪元素来实现。
.html5logo {
display: block;
width: 128px;
height: 128px;
background: url(/img/html5-badge-128.png) no-repeat;
-webkit-tap-highlight-color: rgba(0,0,0,0);
-webkit-tap-highlight-color: transparent; /* For some Androids */
}
.html5logo:active {
-webkit-transform: scale3d(0.9, 0.9, 1);
}
当使用上面的CSS在ios/android的浏览器上时,是没有任何反应的,还需要在html上动点小手脚。
<a class="html5logo"
href="javascript:void(0);"
ontouchstart="return true;"></a>
需要使用ontouchstart事件绑定来是的:active属性生效。

--------------------------------------------------------------------------------------------------------------------------------------
有效的PhoneGap CSS: WebKit Tap Highlight Color的更多相关文章
- CSS 文本字体颜色设置方法(CSS color)
CSS 文本字体颜色设置方法(CSS color) 一.认识CSS 颜色(CSS color) 这里要介绍的是网页设置颜色包含有哪些:网页颜色规定规范. 1.常用颜色地方包含:字体颜色.超链接颜色.网 ...
- 来认识下less css
简介 感觉自己都out了,跟不上web时代的潮流了,前不久才刚接触这玩意,发觉lesscss在某些方面还挺有用的,说白了这东西就是一种动态的样式语言,语法类似于css,可以像java那样进行编译,生成 ...
- CSS——LESS
去年就初次接触了LESS,并用他制作了一个Less.org的首页页面,但由于CSS的固有模式,没有让自己喜欢上他.由于前段时间学习bootstrap from twitter再次让我接触了这个Less ...
- CSS——LESS【转】
原文链接:http://www.w3cplus.com/css/less 去年就初次接触了LESS,并用他制作了一个Less.org的首页页面,但由于CSS的固有模式,没有让自己喜欢上他.由于前段时间 ...
- 前端 CSS预处理器Less
引文 Less是一种动态的样式语言.Less扩展了CSS的动态行为,比如说,设置变量(Variables).混合书写模式(Mixins).操作(Operations)和功能(Functions)等等, ...
- 面试BAT,你凭什么说你掌握了CSS
介绍 项目已经开源:https://github.com/nanhupatar... 欢迎PR 推荐 关注我们的公众号 display: none; 与 visibility: hidden; 的区别 ...
- jQuery属性/CSS使用例子
jQuery属性/CSS 1..attr() 获取匹配的元素集合中的第一个元素的属性的值 或 设置每一个匹配元素的一个或多个属性. 例1:获取元素的属性的值 <p title="段落 ...
- CSS常用样式及示例
CSS常用样式及示例 一.简介 层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集) ...
- css常用效果总结
1.给input的placeholder设置颜色 .phColor::-webkit-input-placeholder { /* WebKit, Blink, Edge */ color:maroo ...
随机推荐
- 设置随机启动--《用delphi开发共享软件》-15.1任务管理器
在设置窗体中 chkAutoStart: TCheckBox; 在设置窗体中 chkAutoStart: TCheckBox; procedure TFrmSetup.FormCreate(Sende ...
- wpf ,tooltip的style
<Style x:Key="MyToolTipStyle" TargetType="ToolTip"> <Setter Property=&q ...
- 《Getting Started with Storm》译文 Homepage
拿到这本书感觉还挺薄,所以当下就想赶紧读完,然后尝试着翻译下,并加上一些自己的理解,作学习交流之用,非盈利性质 这段时间在做一个 分布式的.支持大吞吐的.实时的日志系统 ,主要用到的开源方案有Kaf ...
- uva10106(大数乘法)
public class Product { public static void main(String[] args){ Scanner sc = new Scanner(new Buffered ...
- H5 浏览器开发文档
http://sja.co.uk/controlling-which-ios-keyboard-is-shown https://developer.apple.com/library/safari/ ...
- ubifs核心功能 -- 垃圾回收
可回收空间的分类 垃圾回收的目的是再利用(回收后的空间大小能写入有效的node),如果再利用的价值越低,其回收的必要性越低.为了进行有效的垃圾回收,UBIFS对可回收空间做了2个层次的水线划分: 死空 ...
- git 放弃本地某个文件的修改,或所有修改
18:57 2015/11/17git 放弃本地某个文件的修改,或所有修改git checkout 文件名git checkout // 放弃所有文件的所有修改git reset --hard 版本号 ...
- [iOS-UI]给输入框添加清除按钮的代码
UIButton *clearButton = [self.textField valueForKey:@"_clearButton"]; [clearButton setImag ...
- spring源码学习之路---IOC初探(二)
作者:zuoxiaolong8810(左潇龙),转载请注明出处,特别说明:本博文来自博主原博客,为保证新博客中博文的完整性,特复制到此留存,如需转载请注明新博客地址即可. 上一章当中我没有提及具体的搭 ...
- flex关于字符串转Boolean .
最近做一项目,输入一个boolean类型的参数,结果一致无法获取正确值,后在网上查找才发现原因如下,转帖保存一个: . "false" as Boolean //flase .&q ...