移动端html5 meta标签的神奇功效


Posted in HTML / CSS onJanuary 06, 2016

制作手机版网站的时候,除了页面简洁、操作方便等访问者可以看到的地方以外,就是 Meta 标签的设置,合理设置 Meta 标签 对手机版网站的搜索引擎优化,手机浏览器的渲染展示都有非常大的帮助。对于桌面平台web布局中大家对meta标签再熟悉不过了,它永远位于 head 元素内部,对做SEO的朋友一定对meta有种特殊的感情吧,今天我们就来说说移动平台的meta标签,在移动平台meta标签究竟有哪些神奇的功效呢?
1、Meta 之 viewport
说到移动平台meta标签,那就不得不说一下viewport了,那么什么是viewport呢?
viewport即可视区域,对于桌面浏览器而言,viewport指的就是除去所有工具栏、状态栏、滚动条等等之后用于看网页的区域
。对于传统WEB页面来说,980的宽度在iphone上显示是很正常的,也是满屏的,但对于webapp而言,可能就有点问题了,在iphone上我们的webapp在竖屏下通常宽度都是320,这时我们320页面在iphone上显示成啥效果呢?有人可能认为iPhone不是320的宽度莫,感觉应该是满屏的吧,事实呢?我们来看一下如下布局在iPhone上的显示情况

复制代码
代码如下:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Meta Viewport</title>
<style type="text/css">
div,body{
padding:0;
margin:0;
}
body{
padding-top:100px;
color:#fff;
}
div{
width:320px;
height:100px;
margin:0 auto;
background:#000;
text-align:center;
font:30px/100px Arial;
}
</style>
</head>
<body>
<div>
AppUE
</div>
</body>
</html>

因此我们必须改变viewport,我们就有如下几种属性值可以设置:
width: viewport 的宽度 (范围从 200 到 10,000 ,默认为 980 像素 )
height: viewport 的高度 (范围从 223 到 10,000 )
initial-scale: 初始的缩放比例 (范围从>0到 10 )
minimum-scale: 允许用户缩放到的最小比例
maximum-scale: 允许用户缩放到的最大比例
user-scalable: 用户是否可以手动缩放
对于这些属性,我们可以设置其中的一个或者多个,并不需要你同时都设置,iPhone 会根据你设置的属性自动推算其他属性值 ,而非直接采用默认值。
如果你把initial-scale=1 ,那么 width 和 height在竖屏时自动为320*356 (不是320*480 因为地址栏等都占据空间 ),横屏时自动为 480*208。类似地 ,如果你仅仅设置了 width ,就会自动推算出initial-scale 以及height。例如你设置了 width=320 ,竖屏时 initial-scale 就是 1 ,横屏时则变成 1.5 了。 那么到底这些设置如何让 Safari 知道 ?其实很简单 ,就一个 meta ,形如 :
复制代码
代码如下:

<meta name=”viewport” content=”width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;” />

好了,我们就可以按全屏来布局我们的页面了,不用再担心页面显示的很小了!
2、Meta 之 format-detection

复制代码
代码如下:

<meta name=”format-detection” content=”telephone=no” />

你明明写的一串数字没加链接样式,而iPhone会自动把你这个文字加链接样式、并且点击这个数字还会自动拨号!想去掉这个拨号链接该如何操作呢?这时我们的meta又该大显神通了,代码如下:
telephone=no就禁止了把数字转化为拨号链接!
telephone=yes就开启了把数字转化为拨号链接,要开启转化功能,这个meta就不用写了,在默认是情况下就是开启!

3、Meta 之 apple-mobile-web-app-capable
<meta name=”apple-mobile-web-app-capable” content=”yes” />
这meta的作用就是删除默认的苹果工具栏和菜单栏。content有两个值”yes”和”no”,当我们需要显示工具栏和菜单栏时,这个行meta就不用加了,默认就是显示。
4、Meta 之 apple-mobile-web-app-status-bar-style

复制代码
代码如下:

<meta name=”apple-mobile-web-app-status-bar-style” content=”default” />
<meta name=”apple-mobile-web-app-status-bar-style” content=”black” />
<meta name=”apple-mobile-web-app-status-bar-style” content=”black-translucent” />

作用是控制状态栏显示样式

复制代码
代码如下:

status-bar-style:black
status-bar-style:black-translucent

今天就简单说下在手机版网站中需要添加哪几种 Meta 标签:
viewport
viewport 几乎已经是公认的标准了,最初是由苹果公司创建,用于 iPhone 上面的移动版 Safari,由于 iPhone 的大卖,大部分其他移动浏览器都接受,比如 Opera Mobile, iPhone, Android, Iris, IE, BlackBerry, Obigo, Firefox
最基本的例子,在移动上使站点全屏宽度:

复制代码
代码如下:

<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
HandheldFriendly
这个标签和下面介绍的 MobileOptimized 是功能机时代的事实上标签。
HandheldFriendly 标签最早在 AvantGo 浏览用来标示移动内容的,后来变成一个通用的标准用来标示移动站点,但是不知道这个标签的支持情况。
复制代码
代码如下:

<meta name="HandheldFriendly" content="true"/>

MobileOptimized
这是一个 Windows 专有的 meta 标签也最终成为用于识别移动内容的另一种方法,但是该标签的缺点是,特定的宽度必须给出,再次,这个标签的支持情况也是未知的:

复制代码
代码如下:

<meta name="MobileOptimized" content="320"/>
HTML / CSS 相关文章推荐
css3学习之2D转换功能详解
Dec 23 HTML / CSS
深入浅出CSS3 background-clip,background-origin和border-image教程
Jan 27 HTML / CSS
CSS3实现的炫酷菜单代码分享
Mar 12 HTML / CSS
详解CSS3新增的背景属性
Dec 25 HTML / CSS
HTML5的语法变化介绍
Aug 13 HTML / CSS
一款html5 canvas实现的图片玻璃碎片特效
Sep 11 HTML / CSS
html5+svg学习指南之SVG基础知识
Dec 17 HTML / CSS
基于HTML5陀螺仪实现ofo首页眼睛移动效果的示例
Jul 31 HTML / CSS
html5 制作地图当前定位箭头的方法示例
Jan 10 HTML / CSS
HTML5 canvas实现的静态循环滚动播放弹幕
Jan 05 HTML / CSS
CSS SandBox应用场景及常见问题
Jun 25 HTML / CSS
td 内容自动换行 table表格td设置宽度后文字太多自动换行
Dec 24 HTML / CSS
Web时代变迁及html5与html4的区别
Jan 06 #HTML / CSS
HTML5学习笔记之html5与传统html区别
Jan 06 #HTML / CSS
探讨HTML5移动开发的几大特性(必看)
Dec 30 #HTML / CSS
HTML5 history新特性pushState、replaceState及两者的区别
Dec 26 #HTML / CSS
实例讲解HTML5的meta标签的一些应用
Dec 08 #HTML / CSS
Html5大文件断点续传实现方法
Dec 05 #HTML / CSS
HTML5有哪些新特征
Dec 01 #HTML / CSS
You might like
用PHP的超级变量$_POST获取HTML表单(HTML Form) 数据
2011/05/07 PHP
php递归遍历删除文件的方法
2015/04/17 PHP
php传值赋值和传地址赋值用法实例分析
2015/06/20 PHP
PHP使用array_merge重新排列数组下标的方法
2015/07/22 PHP
PHP+Ajax异步带进度条上传文件实例
2016/11/01 PHP
个人总结的一些关于String、Function、Array的属性和用法
2007/01/10 Javascript
jQuery - css() 方法示例详解
2014/01/16 Javascript
javascript HTML5 canvas实现打砖块游戏
2020/06/18 Javascript
js+html5实现canvas绘制椭圆形图案的方法
2016/05/21 Javascript
jQuery实现自动调用和触发某个事件的方法
2016/11/18 Javascript
Javascript设计模式之装饰者模式详解篇
2017/01/17 Javascript
原生js实现图片放大缩小计时器效果
2017/01/20 Javascript
jQuery实现页面倒计时并刷新效果
2017/03/13 Javascript
windows下vue.js开发环境搭建教程
2017/03/20 Javascript
微信小程序实战之上拉(分页加载)效果(2)
2017/04/17 Javascript
详解nodeJS之路径PATH模块
2017/05/31 NodeJs
微信小程序之选项卡的实现方法
2017/09/29 Javascript
vue.js中导出Excel表格的案例分析
2019/06/11 Javascript
vue-cli3访问public文件夹静态资源报错的解决方式
2020/09/02 Javascript
[41:17]VG vs Optic 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
[38:39]完美世界DOTA2联赛循环赛 IO vs GXR BO2第二场 11.04
2020/11/05 DOTA
[01:04:32]DOTA2-DPC中国联赛 正赛 Aster vs LBZS BO3 第二场 2月23日
2021/03/11 DOTA
Python编程使用*解包和itertools.product()求笛卡尔积的方法
2017/12/18 Python
Python爬虫实现百度图片自动下载
2018/02/04 Python
批量将ppt转换为pdf的Python代码 只要27行!
2018/02/26 Python
python实现逆滤波与维纳滤波示例
2020/02/26 Python
python构造IP报文实例
2020/05/05 Python
解决HTML5手机端页面缩放的问题
2017/10/27 HTML / CSS
Java里面有没有全局变量?为什么?
2015/02/06 面试题
高中毕业生个人自我鉴定
2013/11/24 职场文书
公司承诺书范文
2014/05/19 职场文书
网络技术专业求职信
2014/07/13 职场文书
师德师风的心得体会
2014/09/02 职场文书
实习单位意见
2015/06/04 职场文书
Angular性能优化之第三方组件和懒加载技术
2021/05/10 Javascript
PyQt5结合QtDesigner实现文本框读写操作
2021/06/11 Python