`
caibinghong
  • 浏览: 143295 次
  • 性别: Icon_minigender_1
  • 来自: 福建
社区版块
存档分类
最新评论

针对webkit的HTML, CSS和Javascript

 
阅读更多

前面有 一篇文章 介绍了HTML5的一些新特性以及技巧, 现再来总结一些更多的针对webkit的HTML, CSS和Javascript方面的特性. HTML, 从HTML文档的开始到结束排列: XML/HTML Code 复制内容到剪贴板 met…

 

前面有一篇文章介绍了HTML5的一些新特性以及技巧, 现再来总结一些更多的针对webkit的HTML, CSS和Javascript方面的特性.

HTML, 从HTML文档的开始到结束排列:

XML/HTML Code复制内容到剪贴板
  1. <meta name=”viewport” content=”width=device-width, initial-scale=1.0″/>   
  2. <!--让内容的宽度自适应为设备的宽度, 在做Mobile Web时必须加的一条  -->  
  3. <meta name=”format-detection” content=”telephone=no”]]>   
  4. <!--禁用手机号码链接(for iPhone)  -->  
  5. <link rel=”apple-touch-icon” href=”icon.png”/>   
  6. <!--设置你网页的图标, 尺寸为57X57 px  -->  
  7. <!– iOS 2.0+: tell iOS not to apply any glare effects to the icon –>    
  8. <link rel=”apple-touch-icon-precomposed” href=”icon.png”/>    
  9. <!– iOS 4.2+ icons for different resolutions –>    
  10. <link rel=”apple-touch-icon” sizes=”72×72″ href=”touch-icon-ipad.png” />    
  11. <link rel=”apple-touch-icon” sizes=”114×114″ href=”touch-icon-iphone4.png” />    
  12. <link rel=”apple-touch-startup-image” href=”startup.png”>   
  13. <!--全屏启动时候的启动画面图像, 尺寸320X460 px  -->  
  14. <meta name=”apple-mobile-web-app-capable” content=”yes” />   
  15. <!--是否允许全屏显示, 只有在桌面启动时可用 -->   
  16. <meta name=”apple-mobile-web-app-status-bar-style” content=”black” />   
  17. <!--控制全屏时顶部状态栏的外观, 默认白色  -->  
  18. <input autocorrect=”off” autocomplete=”off” autocapitalize=”off”>    
  19. <!--取消自动完成, 自动大写单词字母(适用于Mobile上)  -->  
  20. <input type=”text” x-webkit-speech />   
  21. <!--语音输入  -->  
  22. <input type=”file” accept = “image/*; capture=camera” />   
  23. <!--文件上传, 从相机捕获媒体, 下同 -->   
  24. <input type=”file” accept = “video/*; capture=camcorder” />    
  25. <input type=”file” accept = “audio/*; capture=microphone” />    
  26. <a href=”sms:18005555555,18005555556″]]>   
  27. <!--发送短信给多个人的链接 -->  
  28. <a href=”sms:18005555555?body=Text%20goes%20here”]]>   
  29. <!--发送短信附带内容的链接 -->  
  30. <a href=”tel:18005555555″]]>Call us at 1-800-555-5555</a]]>   
  31. <!--拨打电话的链接 -->   

CSS:

CSS Code复制内容到剪贴板
  1. -webkit-tap-highlight-colortransparent;   
  2. /*Mobile上点击链接高亮的时候设置颜色为透明*/  
  3.   
  4. -webkit-user-select: none;   
  5. /*设置为无法选择文本*/  
  6.   
  7. -webkit-touch-callout: none;   
  8. /*长按时不触发系统的菜单, 可用在图片上加这个属性禁止下载图片*/  
  9.   
  10. :-webkit-full-screen canvas {}   
  11. /*全屏模式时的样式(for Desktop)*/  
  12.   
  13. div p :matches(em, b, strong) {}   
  14. /*使用mathes来匹配多个选择器*/  
  15.   
  16. @media only screen and (max-width480px) {}   
  17. /*指定Mobile设备或者小屏幕桌面屏幕*/  
  18.   
  19. @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 300dpi) { }  
  20. /*指定高分辨率屏幕设备*/  
  21. header { background-imageurl(header-highres.png); }  
  22. }  
  23.   
  24. @media (-webkit-max-device-pixel-ratio: 1.5),(max-resolution: 299dpi) { /*指定低分辨率屏幕设备*/}  
  25.   
  26. header { background-imageurl(header-lowres.png); }  
  27. }  
  28.   
  29. background-repeat:  space; background-repeat: round;   
  30. /*这两种CSS3的背景属性值得研究*/  
  31.   
  32. width: calc(100%-40px);   
  33. /*计算宽度*/  
  34.   
  35. text-decoration#FF8800  wavy ine-through;   
  36. /*波浪型链接*/  
  37.   
  38. text-rendering: optimizeLegibility;   
  39. /*用这个属性之后会收紧字符间的距离*/  
  40.   
  41. font-variant-ligatures:  common-ligatures;   
  42. /*设置CSS连字*/  
  43.   
  44. transform:  rotate(90);   
  45. /*旋转90度*/  
  46.   
  47. transform-origin: center center; transform-origin  
  48. /*可以改变变换的位置*/  
  49.   
  50. -webkit-appearance: none; -webkit-appearance  
  51. /*可以改变按钮或者其它控件看起来类似本地的控件*/  

美化表单校验时的提示样式

CSS Code复制内容到剪贴板
  1. -webkit-validation-bubble {}  
  2. -webkit-validation-bubble-message {}  
  3. -webkit-validation-bubble-arrow {}  
  4. -webkit-validation-bubble-arrow-clipper {}  
   

当提示出现时类似于下面的结构

XML/HTML Code复制内容到剪贴板
  1. <div -webkit-validation-bubble>  
  2. <div -webkit-validation-bubble-arrow></div>   
  3. <div -webkit-validation-bubble-arrow-clipper></div>  
  4. <div -webkit-validation-bubble-message>Error Message</div>   
  5. </div>  

自定义webkit浏览器的滚动条, 见Google Reader等在Chrome/Safari下的效果, 下面是一个实例, 这个滚动条的样式代码如下

CSS Code复制内容到剪贴板
  1. Customized WebKit Scrollbar /* Let´s get this party started */    
  2. ::-webkit-scrollbar {    
  3. width12px;    
  4. }    
  5. /* Track */    
  6. ::-webkit-scrollbar-track {    
  7. -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);    
  8. -webkit-border-radius: 10px;    
  9. border-radius: 10px;    
  10. }    
  11.      
  12. /* Handle */    
  13. ::-webkit-scrollbar-thumb {    
  14. -webkit-border-radius: 10px;    
  15. border-radius: 10px;    
  16. background: rgba(255,0,0,0.8);    
  17. -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.5);    
  18. }    
  19. ::-webkit-scrollbar-thumb:window-inactive {    
  20. background: rgba(255,0,0,0.4);    
  21. }    
  22. -webkit-background-composite: plus-darker; -webkit-background-composite  
  23. /*用来设置一个元素的背景或颜色的组合样式*/  
  24.   
  25. -webkit-text-stroke:  1px rgba(0,0,0,0.5); -webkit-text-stroke  
  26. /*可以用来给文字添加描边*/  
  27.   
  28. -webkit-mask-image:  url(/path/to/mask.png);   
  29. /*定义一个图片用来遮罩元素*/  
  30.   
  31. -webkit-box-reflect:  below 5px;   
  32. /*定义了一个元素的反射*/  
  33.   
  34. :local-link {font-weightnormal;}    
  35. /*local-link可以定义相对地址的链接样式*/  

Javascript:

window.scrollTo(0,0); 隐藏地址栏

window.matchMedia(); 匹配媒体

navigator.connection; 决定手机是否运行在WiFi/3G等网络

window.devicePixelRatio; 决定屏幕分辨率(iPhone 4值为2, 而Nexus One值为1.5)

window.navigator.onLine; 取得网络连接状态

window.navigator.standalone; 决定iPhone是否处于全屏状态

touch事件 (iOS, Android 2.2+): touchstart, touchmove, touchend, touchcancel

gesture事件 (Apple only, iOS 2+):  gesturestart, gesturechange, gesturend give access to predefined gestures (rotation, scale, position)

JavaScript Code复制内容到剪贴板
  1. window.addEventListener("orientationchange"function(e){  
  2. //window.orientation(0 is portrait, 90 and -90 are landscape)  
  3. }, false);  
  4.    
  5. window.addEventListener("deviceorientation"function(e){  
  6. //e.alpha  
  7. //e.beta  
  8. //e.gamma  
  9. }, false);  
  10. window.addEventListener("devicemotion"function(e){  
  11. //e.accelerationIncludingGravity.x   
  12. //e.accelerationIncludingGravity.y  
  13. //e.accelerationIncludingGravity.z   
  14. }, false);  

requestAnimationFrame() 新的动画函数

element.webkitRequestFullScreen() 调用全屏函数

分享到:
评论

相关推荐

    jscss:可以将CSS和JavaScript混合使用CSS预处理程序

    JsCSS可以区分JavaScript和CSS(希望使用一个大的Regex)。 这使得以一种非常有用的方式混合两种语言成为可能。 就像LESS或Sass一样:JavaScript是预处理器。 在CSS表达式中, | 可用于创建JavaScript区域。 它们...

    htmlPy:htmlPy是PySide的QtWebKit库的包装。 它有助于使用HTML5,CSS3和Javascript为独立的Python应用程序创建漂亮的GUI

    它有助于使用HTML5,CSS3和Javascript为独立的Python应用程序创建漂亮的GUI。 它建立在之上,这使其高度可定制且跨平台。 htmlPy与Python2和Python3兼容。 它可以与任何python库或环境(如 , , , 等)一起使用。...

    WebKit技术内幕朱永盛

    《WebKit技术内幕》首先从总体上描述WebKit 架构和组成,而后涵盖Web 前端和所有与之相关的重要技术,包括网络、资源加载、HTML 和CSS 解析、渲染树、布局、硬件加速、JavaScript 引擎、多媒体、移动支持、插件机制...

    Webkit技术内幕

    , 《WebKit技术内幕》首先从总体上描述WebKit 架构和组成,而后涵盖Web 前端和所有与之相关的重要技术,包括网络、资源加载、HTML 和CSS 解析、渲染树、布局、硬件加速、JavaScript 引擎、多媒体、移动支持、插件...

    Coverflow By Javascript & CSS3

    用jquery和CSS3模拟的coverflow效果,利用css3来实现动画效果,支持firefox,ie,和webkit内核的浏览器。

    js-css-clock:该项目是使用CSS,CSS动画和JavaScript创建的时钟

    该项目是使用CSS , CSS动画和JavaScript创建的时钟。 完成项目后,我解决了分针无法提前推进的问题,从而使秒针越过了12点就跳过了几秒钟。 分针也向后旋转90度。 我为此创建了一个修复程序,但是当我在Safari中对...

    Jadesktop:使用HTML5,CSS,JavaScript和Python构建Linux桌面环境

    使用Web Technologies,HTML / CSS和用于UI的VueJS构建的桌面环境,后端是QT和GTK。 在此处了解更多信息( ) 致谢 国家Beta 任何具有HTML / CSS技能的小型代码库都可以更改桌面,使其外观和行为有所不同。 打包 ...

    WebKit分析报告2

    二.WebKit主要特点和目标 5 三.WebKit主要组成 7 II.WebKit之WebCore介绍 7 一.WebCore所包含的主要内容 7 1.目录结构 7 2.主要数据结构 9 二.一个Http请求在WebCore中的主要流程 13 1.WebKit工作流程 13 2.处理流程...

    WebKit技术内幕高清全书441页

    在浏览器中,有一个最重要的模块,它主要作用是将页面转变成可视化的图形结果,这就是浏览器内核。...浏览器的渲染引擎就是能够将HTML/CSS/JavaScript文本及其相应的资源文件转换成图像结果的模块。

    WebKit技术内幕

    从总体上描述WebKit 架构和组成,而后涵盖Web 前端和所有与之相关的重要技术,包括网络、资源加载、HTML 和CSS 解析、渲染树、布局、硬件加速、JavaScript 引擎、多媒体、移动支持、插件机制、安全机制、调试和最新...

    balena-wpe:具有RaspberryPi 3的硬件加速CSS,WebGL和HTML5视频的全屏WebKit浏览器

    balena-wpe:具有RaspberryPi 3的硬件加速CSS,WebGL和HTML5视频的全屏WebKit浏览器

    JavaScript判断浏览器对CSS3属性是否支持的多种方法

    前言 CSS3的出现让浏览器的表现更加的丰富多彩,表现冲击最大的就是动画了,在日常书写动画的时候,很有必要去事先判断浏览器是否支持,尤其是在写CSS3动画库的时候。... vendors = 'Ms O Moz Webkit'.split(' '

    stylecow-plugin-webkit-gradient:Stylecow插件使用CSS渐变的旧Webkit语法生成CSS后备代码

    stylecow插件webkit-gradient Stylecow插件使用CSS渐变的旧Webkit语法生成CSS后备代码。 注意:此插件不会在新语法中添加供应商前缀,请使用来完成。 你写: body { background-image : linear-gradient (to bottom ...

    最小的准系统CSS重置-JavaScript开发

    最小的准系统CSS重置CSS微重置您可能不需要CSS重置,至少不需要完整CSS重置。 每个浏览器都有自己CSS重置。 再次重置意味着您以后需要设置所有重置元素。 基本上,您有:浏览器重置-&gt;您的重置-&gt;设置所有重置元素-&gt;...

    picoCSS:picoCSS-很小JavaScript框架

    picoCSS很小(已压缩并压缩为0.35kb),用于针对CSS DOM操作JavaScript库,针对Webkit浏览器(Safari,Chrome)进行了优化,该动画库也可以在Firefox,Opera中运行,而没有动画部分。 picoCSS的目标并不是成为完整...

    javascript判断css3动画结束 css3动画结束的回调函数

    transitionend事件和animationend事件标准的浏览器事件,但在WebKit浏览器里你仍然需要使用webkit前缀,所以,我们不得不根据各种浏览器分别检测事件 代码如下: var transitions = {  ‘transition’:’...

    JavaScript应用框架Fayde.zip

    Fayde 是所有平台的 Silverlight,完全使用 JavaScript 编写,支持所有平台和浏览器,使用 node-webkit 编译,可以作为一个桌面应用部署。Fayde 是使用 JavaScript 编写的 XAML 引擎,可以渲染成 HTML5 Canvas。依赖...

Global site tag (gtag.js) - Google Analytics