viewport 的基本原理以及使用

简介: viewport 的基本原理以及使用

一.viewport的概要

移动端浏览器通常都在一个比屏幕更宽的虚拟窗口中渲染页面,这个虚拟窗口就是viewport,目的是正常展示没有做移动端适配的网页,可以让他们完整的展现给用户。我们有时用移动设备访问桌面版网页就会看到一个横向滚动条,这里可显示区域的宽度就是viewport的宽度。

二.css中的像素和设备像素的区别

在桌面网页开发时,css中的1px就是设备上的1px;然而css中的1px仅仅是一个抽象的值,不代表实际像素为多少;而在移动设备中,不同设备的像素密度是不一样的,css中的1px可能并不等于真实设备的一个像素值。用户缩放也会改变css中的1px代表多少设备像素。这个比例就是devicePixelRatio

物理像素/独立像素 = devicePixelRatio

我们可以在浏览器中进行缩放,在控制台中打印window.devicePixelRatio来查看devicePixelRatio的大小。其中的独立像素可以理解为css中的px。

三.viewport进阶

width和initial-scale

当设置了width和initial-scale时,浏览器会自动选择数值最大的进行适配。如设置:

1 <meta name="viewport" content="width=400, initial-scale=1">

浏览器会选择数值大的进行适配,如果当前窗口ideal viewport宽度为300,initial-scale值为1,取得是width为400的值;如果当前窗口的ideal viewport为480,则取480。

事实上,width=device-width和initial-scale=1都代表应用ideal viewport,但在ipad、iphone等移动设备和IE上,横竖屏不分,默认都取竖屏的宽度,兼容性最好的写法就是

1 <meta name="viewport" content="width=device-width, initial-scale=1">

相关文章
|
2月前
|
JavaScript
extjs简易viewport左右结构的使用
extjs简易viewport左右结构的使用
31 2
|
4月前
|
前端开发
移动适配viewport方案记录
【8月更文挑战第10天】
|
6月前
|
编解码 移动开发 前端开发
详细介绍Viewport Meta标签的作用、属性以及如何在移动端开发中合理使用它,以优化网页的显示效果
【6月更文挑战第14天】本文介绍了HTML的Viewport Meta标签在移动端网页优化中的应用。该标签定义了视口属性,如宽度、高度和缩放,解决屏幕尺寸差异导致的显示问题。通过设置`width=device-width`确保页面适应设备宽度,`initial-scale=1.0`保持原始比例,`user-scalable=no`可禁用手动缩放。此外,使用`viewport-fit=cover`适配不同像素比设备的安全区域。合理利用这些属性能改善移动端网页显示效果。
213 1
|
7月前
|
前端开发 iOS开发
viewport 的基本原理以及使用
viewport 的基本原理以及使用
|
编解码 UED 开发者
mate viewport是什么?原理是什么?
mate viewport是什么?原理是什么?
80 0
|
编解码 自然语言处理 算法
一行文本,生成3D动态场景:Meta这个「一步到位」模型有点厉害
一行文本,生成3D动态场景:Meta这个「一步到位」模型有点厉害
173 0
|
编解码 前端开发 iOS开发
准备-viewport-非主流分析 |学习笔记
快速学习 准备-viewport-非主流分析
124 0
准备-viewport-非主流分析 |学习笔记
|
前端开发 开发者 容器
准备-viewport-定义 |学习笔记
快速学习 准备-viewport-定义
|
前端开发 开发者
准备 -viewport- 标准化设置|学习笔记
快速学习 准备-viewport-标准化设置
109 0
|
编解码 前端开发 JavaScript
解读 viewport—网页自适应移动 app 神器
viewport指的是是用户网页的可视区域,查了许久,遗憾的是近一两年几乎没有高质量的解析viewport的文章,本文内容是参考大牛,对内容进行了重新排版,以及对重点内容进行标注、精简,加上些许的个人理解形成的。有兴趣的朋友,可以参考一下。 一.背景介绍 现在人通过手机浏览网页占了大多数,随着浏览方式的改变,网页在webapp下面实现多终端自适应,无论是对于避免工程师无谓的重复劳动或者是对于项目管理便捷性上来说都是十分重要的,然而在移动设备上进行网页的重构或开发,首先得搞明白的就是移动设备上的viewport了,只有明白了view
519 0
解读 viewport—网页自适应移动 app 神器