一、常用META
1. 添加到主屏后的标题(IOS)
1
|
<
meta
name
=
"apple-mobile-web-app-title"
content
=
"标题"
>
|
2. 启用 WebApp 全屏模式(IOS)
当网站添加到主屏幕后再点击进行启动时,可隐藏地址栏(从浏览器跳转或输入链接进入并没有此效果)
1
2
|
<
meta
name
=
"apple-mobile-web-app-capable"
content
=
"yes"
/>
<
meta
name
=
"apple-touch-fullscreen"
content
=
"yes"
/>
|
3. 百度禁止转码
通过百度手机打开网页时,百度可能会对你的网页进行转码,往你页面贴上它的广告,非常之恶心。不过我们可以通过这个meta标签来禁止它:
1
2
|
<
meta
http-equiv
=
"Cache-Control"
content
=
"no-siteapp"
/>
百度SiteApp转码声明
|
4. 设置状态栏的背景颜色(IOS)
设置状态栏的背景颜色,只有在 "apple-mobile-web-app-capable" content="yes" 时生效
1
|
<
meta
name
=
"apple-mobile-web-app-status-bar-style"
content
=
"black-translucent"
/>
|
content 参数:
default :状态栏背景是白色。
black :状态栏背景是黑色。
black-translucent :状态栏背景是半透明。 如果设置为 default 或 black ,网页内容从状态栏底部开始。 如果设置为 black-translucent ,网页内容充满整个屏幕,顶部会被状态栏遮挡。
5. 移动端手机号码识别(IOS)
在 iOS Safari (其他浏览器和Android均不会)上会对那些看起来像是电话号码的数字处理为电话链接,比如:
7位数字,形如:1234567
带括号及加号的数字,形如:(+86)123456789
双连接线的数字,形如:00-00-00111
11位数字,形如:13800138000
可能还有其他类型的数字也会被识别。我们可以通过如下的meta来关闭电话号码的自动识别:
1
|
<
meta
name
=
"format-detection"
content
=
"telephone=no"
/>
|
开启电话功能
123456
开启短信功能:
123456
6. 移动端邮箱识别(Android)
与电话号码的识别一样,在安卓上会对符合邮箱格式的字符串进行识别,我们可以通过如下的meta来管别邮箱的自动识别:
1
|
<
meta
content
=
"email=no"
name
=
"format-detection"
/>
|
同样地,我们也可以通过标签属性来开启长按邮箱地址弹出邮件发送的功能:
<a mailto:dooyoe@gmail.com" >dooyoe@gmail.com
7.viewport视口标签(控制页面缩放等信息)
1
|
<
meta
name=”viewport” content=”
width
=
device
-width,
target-densitydpi
=
high
-dpi,
initial-scale
=
1
.0,
minimum-scale
=
1
.0,
maximum-scale
=
1
.0,
user-scalable
=
no
”/>
|
参数:
1、width
—-控制 viewport 的大小,可以指定的一个值或者特殊的值,如 device-width 为设备的宽度(单位为缩放为 100% 时的 CSS 的像素)。
2、height
—-和 width 相对应,指定高度。
3、target-densitydpi
—-一个屏幕像素密度是由屏幕分辨率决定的,通常定义为每英寸点的数量(dpi)。Android支持三种屏幕像素密度:低像素密度,中像素密度,高像素密度。一个低像素密度的屏幕每英寸上的像素点更少,而一个高像素密度的屏幕每英寸上的像素点更多。Android Browser和WebView默认屏幕为中像素密度。
下面是 target-densitydpi 属性的取值范围
device-dpi: 使用设备原本的 dpi 作为目标 dp。 不会发生默认缩放。
high-dpi: 使用hdpi 作为目标 dpi。 中等像素密度和低像素密度设备相应缩小。
medium-dpi: 使用mdpi作为目标 dpi。 高像素密度设备相应放大, 像素密度设备相应缩小。 这是默认的target density.
low-dpi: 使用mdpi作为目标 dpi。中等像素密度和高像素密度设备相应放大。
: 指定一个具体的dpi 值作为target dpi. 这个值的范围必须在70–400之间。
注:为了防止Android Browser和WebView 根据不同屏幕的像素密度对你的页面进行缩放,你可以将viewport的target-densitydpi 设置为 device-dpi。当你这么做了,页面将不会缩放。相反,页面会根据当前屏幕的像素密度进行展示。在这种情形下,你还需要将viewport的width定义为与设备的width匹配,这样你的页面就可以和屏幕相适应。
4、initial-scale
—-初始缩放。即页面初始缩放程度。这是一个浮点值,是页面大小的一个乘数。例如,如果你设置初始缩放为“1.0”,那么,web页面在展现的时候就会以target density分辨率的1:1来展现。如果你设置为“2.0”,那么这个页面就会放大为2倍。
5、maximum-scale
—-最大缩放。即允许的最大缩放程度。这也是一个浮点值,用以指出页面大小与屏幕大小相比的最大乘数。例如,如果你将这个值设置为“2.0”,那么这个页面与target size相比,最多能放大2倍。
6、user-scalable
—-用户调整缩放。即用户是否能改变页面缩放程度。如果设置为yes则是允许用户对其进行改变,反之为no。默认值是yes。如果你将其设置为no,那么minimum-scale 和 maximum-scale都将被忽略,因为根本不可能缩放。
所有的缩放值都必须在0.01–10的范围之内。
二、开发技巧
1.input和button点击时的蓝色外边框和灰色半透明背景问题处理
1
2
3
|
a,button,input,optgroup,select,textarea {
-webkit-tap-highlight-
color
:rgba(
0
,
0
,
0
,
0
);
}
|
2、关闭iOS键盘首字母自动大写
1
|
<
input
type
=
"text"
autocapitalize
=
"off"
/>
|
3、禁止文本缩放
1
2
3
|
html {
-webkit-text-size-adjust:
100%
;
}
|
4、移动端如何清除输入框内阴影
在iOS上,输入框默认有内部阴影,但无法使用 box-shadow 来清除,如果不需要阴影,可以这样关闭:
1
2
3
4
5
|
input,
textarea {
border
:
0
;
-webkit-appearance:
none
;
}
|
5、移动端禁止选中内容
1
2
3
|
div {
-webkit-user-select:
none
;
}
|
6.文本溢出
1、单行文本溢出
1
2
3
4
5
|
.xx{
overflow
:
hidden
;
white-space
:
nowrap
;
text-
overflow
:ellipsis;
}
|
2、多行文本溢出
1
2
3
4
5
6
7
8
|
.xx{
display
:-webkit-box !importmort;
overflow
:
hidden
;
text-
overflow
:ellipsis;
word-break:break-
all
;
-webkit-box-orient:vertical;
-webkit-line-clamp:
2
;(数字
2
表示隐藏两行)
}
|