【简介】
移动端得web开发技巧(一)之meta标签的使用,详情请看,上一篇文章的介绍。
移动web开发中常见的问题如下:
【1. 移动端如何定义字体font-family】
三大手机系统的字体:
ios 系统
- 默认中文字体是Heiti SC
- 默认英文字体是Helvetica
- 默认数字字体是HelveticaNeue
- 无微软雅黑字体
android 系统
- 默认中文字体是Droidsansfallback
- 默认英文和数字字体是Droid Sans
- 无微软雅黑字体
winphone 系统
- 默认中文字体是Dengxian(方正等线体)
- 默认英文和数字字体是Segoe
无微软雅黑字体
- 各个手机系统有自己的默认字体,且都不支持微软雅黑
- 如无特殊需求,手机端无需定义中文字体,使用系统默认
- 英文字体和数字字体可使用 Helvetica ,三种系统都支持
[CSS] 纯文本查看 复制代码
1 2 3 |
|
【2. 移动端字体单位font-size选择px还是rem】
对于只需要适配手机设备,使用px即可
对于需要适配各种移动设备,使用rem,例如只需要适配iPhone和iPad等分辨率差别比较挺大的设备
rem配置参考:
[CSS] 纯文本查看 复制代码
001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 017 018 019 020 021 022 023 024 025 026 027 028 029 030 031 032 033 034 035 036 037 038 039 040 041 042 043 044 045 046 047 048 049 050 051 052 053 054 055 056 057 058 059 060 061 062 063 064 065 066 067 068 069 070 071 072 073 074 075 076 077 078 079 080 081 082 083 084 085 086 087 088 089 090 091 092 093 094 095 096 097 098 099 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 |
|
【3. 移动端touch事件(区分webkit 和 winphone)】
当用户手指放在移动设备在屏幕上滑动会触发的touch事件
以下支持webkit
- touchstart——当手指触碰屏幕时候发生。不管当前有多少只手指
- touchmove——当手指在屏幕上滑动时连续触发。通常我们再滑屏页面,会调用event的preventDefault()可以阻止默认情况的发生:阻止页面滚动
- touchend——当手指离开屏幕时触发
- touchcancel——系统停止跟踪触摸时候会触发。例如在触摸过程中突然页面alert()一个提示框,此时会触发该事件,这个事件比较少用
以下支持winphone 8
- MSPointerDown——当手指触碰屏幕时候发生。不管当前有多少只手指
- MSPointerMove——当手指在屏幕上滑动时连续触发。通常我们再滑屏页面,会调用css的html{-ms-touch-action: none;}可以阻止默认情况的发生:阻止页面滚动
- MSPointerUp——当手指离开屏幕时触发
【4. 什么是Retina 显示屏,带来了什么问题】
retina:一种具备超高像素密度的液晶屏,同样大小的屏幕上显示的像素点由1个变为多个,如在同样带下的屏幕上,苹果设备的retina显示屏中,像素点1个变为4个
在高清显示屏中的位图被放大,图片会变得模糊,因此移动端的视觉稿通常会设计为传统PC的2倍
那么,前端的应对方案是:
设计稿切出来的图片长宽保证为偶数,并使用backgroud-size把图片缩小为原来的1/2
[CSS] 纯文本查看 复制代码
1 2 3 4 5 6 7 8 9 |
|
【5. webkit表单输入框placeholder的颜色值能改变么】
[CSS] 纯文本查看 复制代码
1 2 3 |
|
【7. 移动端禁止选中内容】
如果你不想用户可以选中页面中的内容,那么你可以在css中禁掉:
[CSS] 纯文本查看 复制代码
1 2 3 4 5 6 7 8 9 |
|
【8. 移动端取消touch高亮效果】
在做移动端页面时,会发现所有a标签在触发点击时或者所有设置了伪类 :active 的元素,默认都会在激活状态时,显示高亮框,如果不想要这个高亮,那么你可以通过css以下方法来进行全局的禁止:
[HTML] 纯文本查看 复制代码
1 2 3 4 5 |
|
但这个方法在三星的机子上无效,有一种妥协的方法是把页面非真实跳转链接的a标签换成其它标签,可以解决这个问题。
【9. 如何禁止保存或拷贝图像(苹果)】
通常当你在手机或者pad上长按图像 img ,会弹出选项 存储图像 或者 拷贝图像,如果你不想让用户这么操作,那么你可以通过以下方法来禁止:
[CSS] 纯文本查看 复制代码
1 |
|
【11. 关闭苹果键盘首字母自动大写】
在苹果中,默认情况下键盘是开启首字母大写的功能的,如果启用这个功能,可以这样:
<ignore_js_op>
【12. 关闭苹果输入自动修正】
和英文输入默认自动首字母大写那样,苹果还做了一个功能,默认输入法会开启自动修正输入内容,这样的话,用户经常要操作两次。如果不希望开启此功能,我们可以通过input标签属性来关闭掉:
<ignore_js_op>
<ignore_js_op>
原文地址:https://www.cnblogs.com/heimaguangzhou/p/11430915.html