使用视 meta 标签来控制手机浏览器布局
移动浏览器的Fennec一样呈现在一个虚拟的“窗口”页面(视),通常比屏幕宽。
所以他们不需要去挤每个页面布局到一个小窗口(这会破坏许多非移动优化的网站) 。用户可以平移和缩放才能看到页面的不同区域。
移动Safari浏览器推出了“视口元标记”,让Web开发人员控制视口的大小和规模。
许多其他移动浏览器都支持这个标签,虽然它不是任何Web标准的一部分。
苹果公司的文档做得很好解释如何Web开发人员可以使用这个标签,但我们不得不做一些侦探工作,以找出究竟是如何实现它的Fennec的。
例如,Safari的文件说,内容是“逗号分隔的列表”,但现有的浏览器和网页使用逗号,分号,并作为分隔空间的任意组合。
了解更多关于在不同的移动浏览器的视口两个视口的故事在quirksmode.org。
典型的移动优化的网站包含类似以下内容:
<meta name="viewport" content="width=device-width, initial-scale=1">
在宽度属性控制视口的大小。它可以被设置为一样的像素的具体数量宽度= 600或为特殊值设备宽度是在CSS像素在屏幕中的100%的比例的宽度的值。
(有相应的高度和器件高度值,这可能是基于视高度改变大小或位置元素的网页很有用。)
在最初的规模属性控制在首次加载页面缩放级别。的最大尺度,最小规模,并且用户可扩展属性控制用户如何允许放大的页面或缩小。
像素是不是像素
iPhone和许多流行的Android手机有3至4英寸(7-10厘米)屏幕,320-480像素(〜160 DPI)。
Firefox浏览器运行的Maemo的诺基亚N900,它具有相同的物理尺寸,但480-800像素(〜240 DPI)。
正因为如此,小狐的最后版本显示得比iPhone或Android许多网页约三分之一较小(在实际的物理尺寸)。
这引起了很多触控优化网站的可用性和可读性问题。彼得·保罗·科赫写了关于这个问题的像素是不是一个像素。
Fennec的1.1 Maemo平台将用于每一个CSS 1.5硬件像素“像素”,Android的基于WebKit的浏览器的马首是瞻。
这意味着,与页面的初始规模= 1将呈现在接近小狐相同的物理尺寸为Maemo操作,移动Safari浏览器为iPhone,并同时在Android浏览器HDPI和MDPI手机。
这是与相一致的CSS 2.1规范,其中表示:
如果输出设备的像素密度从一个典型的计算机显示屏的非常不同,则用户代理应该重新调整像素值。
建议在象素单元指的是整个数目设备的像素的最近似于参考像素。所以建议参考像素为一个像素的与96DPI的象素密度和来自手臂的长度的读者的
距离的设备上的可视角度。
对于Web开发人员来说,这意味着320像素是在规模= 1肖像模式全宽,在所有上述的手持设备,它们可能规模的布局和相应的图像。
但请记住,并不是所有的移动设备都是相同的宽度; 你也应该确保你的网页在横向模式运作良好,并在诸如iPad和Android平板电脑更大的器件。
在240 dpi的屏幕,配页初始规模= 1有效地将双方的Fennec和Android的WebKit放大到150%。
他们的文字将是顺利和清晰的,但他们的位图图像可能不会采取全屏幕分辨率的优势。
要得到这些屏幕上的清晰的图像,Web开发人员可能需要设计的图像-或者整个布局-在他们的最终大小的150%(或200%,支持320 dpi的设备,
如Retina显示屏iPhone),然后扩展下来使用CSS或视属性。
缺省比值取决于显示密度。上与密度的显示小于200DPI,该比率为1.0。上200和300dpi密度显示,该比率为1.5。
对于密度超过300dpi的显示器中,比率是整数地板(密度 /建议使用150dpi分辨率)。
注意,只有当视口比例等于1否则缺省比值是真实的,CSS像素和装置的像素之间的关系取决于当前缩放级别。
许多站点设置其视口“WIDTH = 320,初始规模= 1”精确到适合纵向模式的iPhone显示屏。
如上所述,这引起的问题时的Fennec 1.0呈现站点,特别是在横向模式。为了解决这个问题,1.1的Fennec将扩大视口的宽度,
如果有必要在要求的规模,以填补屏幕。这与Android和移动Safari浏览器的行为,并且是像iPad这样的大屏幕设备特别有用。
(阿伦派克的选择为iPad网站视口对Web开发人员一个很好的解释。)
对于设置一个初始或最大规模的页面,这意味着宽度属性实际上转化为一个最小的视口宽度。
例如,如果你的布局需要的宽度至少500像素,那么你可以使用下面的标记。当屏幕超过500像素宽,浏览器将扩大视(而非放大)以适应屏幕:
<meta name="viewport" content="width=500, initial-scale=1">
小狐1.1还增加了对支持的最小规模,最大规模和用户可扩展的,具有默认值和类似的限制Safari的。
这些性质影响初始比例和宽度,以及在缩放级别限制的改变。
移动浏览器在处理方向的变化略有不同。例如,从纵向改变为横向时,而不是布置在网页,因为它会如果最初装在横向移动Safari往往只是缩放的页面。
如果Web开发人员希望在iPhone上的切换方向时,他们的规模设置,以保持一致,必须要增加一个最大规模的值,以防止这种变焦,具有阻止用户在放大
的有时是有害的副作用:
<meta name="viewport" content="initial-scale=1, maximum-scale=1">
这是没有必要的Fennec; 当设备改变方向,小狐更新视口大小,页面布局和JavaScript / CSS属性,如设备的宽度,根据其新的窗口尺寸。
常见的视口大小手机和平板设备
如果想知道什么手机和平板设备有哪些视口的宽度,还有的完整列表在这里手机和平板电脑视窗的大小。
这使信息,如在纵向和横向视口宽度以及物理屏幕尺寸,操作系统和装置的像素密度。
viewport:词典原义是视角、视口、检测区。
而网页中meta标签的viewport属性是什么含义、起着什么作用,下面简单讲述下,并实例说明。
viewport属性各个参数:
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">
width:viewport 的宽度,可以指定为一个像素值,如:600,或者为特殊的值,如:device-width (设备的宽度)。
height:viewport的高度。
initial-scale:初始缩放比例,即当浏览器第一次加载页面时的缩放比例。
maximum-scale:允许浏览者缩放到的最大比例,一般设为1.0。
minimum-scale:允许浏览者缩放到的最小比例,一般设为1.0。
user-scalable:浏览者是否可以手动缩放,yes或no。
对于手机浏览器浏览页面,常对viewport进行如下设置即可:
<meta name=”viewport” content=”width=device-width, initial-scale=1.0, maximum-scale=1″>
使用视 meta 标签来控制手机浏览器布局的更多相关文章
- 响应式布局中重要的meta标签设置.适用于手机浏览器兼容性设置
<!-- #手机浏览器兼容性设置 --> <meta content="application/xhtml+xml;charset=UTF-8" http- ...
- HTML5[2]:使用viewport控制手机浏览器布局
基本 <meta name="viewport" content="width=device-width, initial-scale=1">192 ...
- 内核控制Meta标签:让360浏览器默认使用极速模式打开网页(转)
为了让网站页面不那么臃肿,也懒的理IE了,同时兼顾更多的国内双核浏览器,在网页页头中添加了下面两行Meta控制标签. 1,网页头部加入 <meta name="renderer&quo ...
- HTML之meta标签缓存控制
<meta http-equiv="pragram" content="no-cache"> 禁止浏览器从本地缓存中调阅页面. 网页不保存在缓存中, ...
- 浏览器内核控制Meta标签说明文档【转】
背景介绍 由于众所周知的情况,国内的主流浏览器都是双核浏览器:基于Webkit内核用于常用网站的高速浏览.基于IE的内核用于兼容网银.旧版网站.以360的几款浏览器为例,我们优先通过Webkit内核渲 ...
- 浏览器内核控制Meta标签说明文档
浏览器内核控制Meta标签说明文档 原文链接 背景介绍 由于众所周知的情况,国内的主流浏览器都是双核浏览器:基于Webkit内核用于常用网站的高速浏览.基于IE的内核用于兼容网银.旧版网站.以360的 ...
- 用Meta标签代码让360双核浏览器默认极速模式打开网站不是兼容模式
公司所作的页面在360下打开都会遇到在360下自动跳到360兼容模式引发许多兼容问题,摸索了好久终于在网上找到了怎么解决的方法,详情如下: 其实360给网站开发者设计了一种选择的方法,只要加入一段Me ...
- [转] -- html5手机网站自适应需要加的meta标签
webapp开发初期,会碰到在pc端开发好的页面在移动端显示过大的问题,这里需要在html head中加入meta标签来控制缩放 <meta name=" viewport" ...
- meta标签整理
meta指元素可提供有关页面的元信息(meta-information),比如针对搜索引擎和更新频度的描述和关键词.标签位于文档的头部,不包含任何内容. 标签的属性定义了与文档相关联的名称/值对. 一 ...
随机推荐
- 《连载 | 物联网框架ServerSuperIO教程》1.4种通讯模式机制。附小文:招.NET开发,结果他转JAVA了,一切都是为了生活
参考文章: 1.SuperIO通讯框架介绍,含通信本质 2.C#跨平台物联网通讯框架ServerSuperIO(SSIO) 一.感慨 上大学的时候,没有学过C#,花了5块钱在地坛书市买了一本教程,也就 ...
- java 的持久化和序列化的简单理解
1.对象的持久化(Persistence) 对象持久化就是让对象的生存期超越使用对象的程序的运行期.将对象存储在可持久保存的存储介质上,在实际应用中,运用相应的对象持久化框架,将业务数据以对象的方式保 ...
- bootstrap表格分页
<script src="~/Scripts/jquery.min.js"></script> <script src="~/Scripts ...
- HTTP 错误 404.3 - Not Found 由于扩展配置问题而无法提供您请求的页面。如果该页面是脚本 ,请添加处理程序。如果下载文件,请添加 MIME 映射。 IIS站点中添加WCF项目后浏览网站报错解决方法。
vs2013 wcf服务 windows10 家庭中文版 上图中的红色没有出现就按照下面的方法做: 按照上图所示勾选. 刷新上图中你的网站,查看上图右边的内容是否出现,如果出现,再次重新浏览网站,看一 ...
- 八皇后算法的另一种实现(c#版本)
八皇后: 八皇后问题,是一个古老而著名的问题,是回溯算法的典型案例.该问题是国际西洋棋棋手马克斯·贝瑟尔于1848年提出:在8×8格的国际象棋上摆放八个皇后,使其不能互相攻击,即任意两个皇后都不能处于 ...
- Android Weekly Notes Issue #221
Android Weekly Issue #221 September 4th, 2016 Android Weekly Issue #221 ARTICLES & TUTORIALS And ...
- SEED信息安全实验系列:缓冲区溢出漏洞实验
缓冲区溢出漏洞实验 本课程详细出自http://www.shiyanlou.com/courses/231,转载请注明出处. 一.实验描述 缓冲区溢出是指程序试图向缓冲区写入超出预分配固定长度数据的情 ...
- Java之递归求和的两张方法
方法一: package com.smbea.demo; public class Student { private int sum = 0; /** * 递归求和 * @param num */ ...
- mac maven
下载Maven 下载地址 : https://maven.apache.org/download.cgi 解压zip包到指定目录 例如: /Users/Walid/Desktop/develop/to ...
- Git本地服务器搭建及使用详解
Git本地服务器搭建及使用 Git是一款免费.开源的分布式版本控制系统.众所周知的Github便是基于Git的开源代码库以及版本控制系统,由于其远程托管服务仅对开源免费,所以搭建本地Git服务器也是个 ...