首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【移动端网页布局】移动端网页布局基础概念 ② ( 视口 | 布局视口 | 视觉视口 | 理想视口 )

一、视口 ---- 浏览器 显示 网页页面内容 的 屏幕区域 被称为 " 视口 " ; 视口分为以下几个大类 : 布局视口 视觉视口 理想视口 上面的视口 , 只需要关注 理想视口 即可 ; 1、布局视口...在移动设备上,由于屏幕较小,需要 对网页进行缩放以适应屏幕大小,因此布局视口也需要进行调整。 移动设备上的布局视口 通常比 桌面浏览器中的布局视口 小,因为 移动设备屏幕的大小通常比桌面屏幕小。...移动设备浏览器中,设备屏幕较小,页面需要进行缩放以适应屏幕大小,视觉视口 会比 布局视口 小。...下图中 , 在下面的 视觉视口 中 , 网页只能被看到一部分区域 ; 3、理想视口 ( 网页大小 = 设备大小 ) 理想视口 - Ideal Viewport 指的是指在浏览器中,使 网页布局 和 显示最佳的视口大小...理想视口的大小 取决于 网页的内容和布局,通常应该 与布局视口的大小相同 。 通过设置理想视口,可以 使网页在不同设备上具有相同的布局和显示效果,无需进行缩放和滚动。

1.3K30

前端开发-视口

视口概述视口简单理解就是可视区域的大小我们称之为视口在 PC 端,视口大小就是浏览器窗口可视区域的大小 console.log(window.innerWidth, window.innerHeight);图片在移动端, 视口大小并不等于...窗口 大小, 移动端视口宽度被人为定义为了 980图片那么在移动端为什么是 980 而不是其他的值呢,因为过去网页的版心都是 980,乔老爷子为了能够让网页在移动端完美的展示, 所以将 iOS 手机视口的大小定义为了...980,后来谷歌也觉得这是一个非常牛 X 的方案, 所以 Android 手机的视口也定义为了 980。...980 带来的问题,虽然移动端自动将视口宽度设置为 980 之后让我们可以很完美的看到整个网页,但是由于移动端的物理尺寸(设备宽度)是远远小于视口宽度的,所以为了能够在较小的范围内看到视口中所有的内容

17400
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    vh 存在问题?试试动态视口单位之 dvh、svh、lvh

    这也就变相导致了许多基于 100vh 想实现的效果无形中会产生很多问题。...图片来源于:The large, small, and dynamic viewport units 新视口相关单位之 lvh、svh、dvh 为了解决上述的问题,规范新推出了三类单位,分别是: The...总结一下 简单再总结一下,本文通过 vh 在移动存在的问题入手,引出了规范新增的三大类新的和视口相关的单位。...分别是: 大视口(Large Viewport) 小视口(Small Viewport) 动态视口(dynamic viewport) 它们的出现,极大的弥补了之前 vh/vw 等视口单位存在的问题。...最后 文中关于动态视口相关的问题,部分图片来自这篇文章 -- The large, small, and dynamic viewport units,可以一起学习,加深印象。

    2K20

    CSS position:fixed 定位基准元素为视口问题解决

    他们默认的祖先元素都是视口,absolute 大家应改很熟悉,给它的父元素增加 position: relative 就可以基于父元素进行定位了,它是相对于最近的非 static 定位祖先元素的偏移,来确定元素位置...fixed 通常用于导航栏的顶部固定,场景大多是基于视口定位的。...今天看了一下 MDN ,原来 position: fixed 也可以设置它的祖先元素: fixed 元素会被移出正常文档流,并不为元素预留空间,而是通过指定元素相对于屏幕视口(viewport)的位置来指定元素位置...当元素祖先的 transform、perspective、filter 或 backdrop-filter 属性非 none 时,容器由视口改为该祖先。...backdrop-filter 值不为 none 的元素 参考资料: position - CSS:层叠样式表 | MDN 未经允许不得转载:前端资源网 - w3h5 » CSS position:fixed 定位基准元素为视口问题解决

    22910

    CSS position:fixed 定位基准元素为视口问题解决

    他们默认的祖先元素都是视口,absolute 大家应改很熟悉,给它的父元素增加 position: relative 就可以基于父元素进行定位了,它是相对于最近的非 static 定位祖先元素的偏移,来确定元素位置...fixed 通常用于导航栏的顶部固定,场景大多是基于视口定位的。...今天看了一下 MDN ,原来 position: fixed 也可以设置它的祖先元素: fixed 元素会被移出正常文档流,并不为元素预留空间,而是通过指定元素相对于屏幕视口(viewport)的位置来指定元素位置...当元素祖先的 transform、perspective、filter 或 backdrop-filter 属性非 none 时,容器由视口改为该祖先。...backdrop-filter 值不为 none 的元素 参考资料: position - CSS:层叠样式表 | MDN 未经允许不得转载:前端资源网 - w3h5 » CSS position:fixed 定位基准元素为视口问题解决

    24010

    第118天:移动端开发——视口

    我们称它为 布局视口。CSS布局会根据它来计算并被约束。 看下面的图例,体会一下布局视口 ? 2、视觉视口  虽然独立的布局视口很大程度上帮助了桌面网站过渡到手机上。...所以该说明一下视觉视口了。 视觉视口是用户正在看到的网站的区域。用户可以通过缩放来操作视觉视口,同时不会影响布局视口。布局视口还是保持在原来的宽度。 看下图说明一下视觉视口区域 ?...如上图,红色箭头之间的区域就是视觉视口的区域。它和设备的屏幕一样宽,并且它的CSS像素的数量会随着用户缩放而改变。 3、理想视口 布局视口的默认宽度并不是一个理想的宽度。...理想视口仍是为移动端设备准备的。只有手动添加meta视口标签方才生效。如果没有meta视口标签,那么布局将会维持它的默认宽度。 如下代码,告诉浏览器,布局视口的宽度应该与理想视口的宽度一致。...介绍了三种视口 布局视口:不再与移动端浏览器相关联,完全是独立的。实际上布局视口的宽度要比屏幕宽出很多。 视觉视口:用户看到的网站展示区域,一般视觉视口和设备宽度一致。

    95320

    浅谈移动端中的视口(viewport)

    而移动端则较为复杂,它涉及到三个视口:布局视口(Layout Viewport)、视觉视口(Visual Viewport)和理想视口(Ideal Viewport)。 本文主要讨论移动端中的视口。...因此,引入了布局视口、视觉视口和理想视口三个概念,使得移动端中的视口与浏览器宽度不再相关联。...布局视口(layout viewport) 一般移动设备的浏览器都默认设置了一个 viewport 元标签,定义一个虚拟的布局视口(layout viewport),用于解决早期的页面在手机上显示的问题...视觉视口(visual viewport) 视觉视口是用户当前看到的区域,用户可以通过缩放操作视觉视口,同时不会影响布局视口。 ?...= 布局视口的宽度 单独设置 initial-scale 或 width 都会有兼容性问题,所以设置布局视口为理想视口的最佳方法是同时设置这两个属性 即使设置了 user-scalable = no,

    2.3K20

    师于源码 | Flutter 区域视口双向滑动

    比如 AndroidStudio 的文件树和编辑器区域,当宽度较窄时,水平方向通过拖拽底部滚动条来滚动视口。...到这里,就离真相越来越近了, buildCodeArea 方法中很可能就是区域视口双向滑动实现的场所。...否则竖直方向滑动条展示的时机会有问题。 ---- 3.通过小案例提取精华 由于 debugger 代码面板中涉及到其他很多东西,这里来精简一下,做个区域视口双向滑动的最小案例,来方便大家理解和使用。...如下所示,蓝色区域内有一行文字,当窗口宽度缩小到文本溢出时,底部会呈现滑动条支持水平滑动: 这里先总结一下实现区域视口的双向滚动的步骤: 需要两个可滑动的视口: SingleChildScrollView...需要两个 Scrollbar 用于控制视口滑动,并且指定 ScrollController, 关联 [滑动视口] 和 [滑动条]。

    52620

    理想的viewport(视口)并不存在

    在你依据少数几个严格的断点(breakpoints)来做设计决策之前,确保你已经考虑了屏幕尺寸和浏览器视口的巨大碎片化问题。...在Set Studio,我们进行了一个小型的非正式实验,以回答“视口尺寸有多碎片化?”这个问题。我们收集了超过120,000个数据点,涉及超过2,300个不同的视口尺寸。...最常见的视口尺寸是什么? 如果我们从收集到的数据点中筛选出前20个独特的视口尺寸,主要都是较小的尺寸。...我们决定将任何宽度大于800px的视口视为“桌面端”,或者我们更喜欢称之为大视口。 你可能会觉得“800px对于桌面端来说太小了”,如果我们是在测量屏幕尺寸,你是对的。但我们这里测量的是视口尺寸。...来看看所有的视口尺寸 受到2015年Open Signal关于Android屏幕碎片化报告的启发,我们用砖石布局展示了前150个最常见的视口尺寸。你也可以看到所有2,300个不同的视口尺寸。

    21730

    Computer Graphics note(3):视口变换&光栅化

    截屏2020-08-02 下午10.53.16.png 四.视口变换(映射([−1,1]3([-1,1]^3([−1,1]3) 截屏2020-08-02 下午10.54.00.png 五.光栅化 至此,...经过了MVP和视口变换之后,三维空间的几何形体就被映射到了屏幕空间里,想要得到图像,需要用这些信息进行光栅化,将其变成像素。...(2)反走样 从走样的原因出发,理论上只要提高采样率,就能解决走样的问题,但是受物理限制(比如高分辨率显示器)。...Super resolution(超分辨率)/Super Sample(超采样),将低分辨率图像"恢复"成高分辨图像,这个和抗锯齿本质是一样的,解决的是Sample不足的问题。...7.深度测试算法(Z-Buffer,像素内,遮挡问题) 当有多个不同的三角形,距离相机位置,三角形之间存在遮挡问题。

    1.1K21

    【Flutter&Flame 游戏 - 贰玖】pinball 源码分析 - 视口与相机

    认识视口与相机 相机是我们日常生活中非常常见的概念,在 Flame 中,相机的概念如何理解呢?现实生活中,当你使用相机拍出一张照片,其囊括的区域是有限的,这个区域也就是视口 Viewport。...所以角色的显示情况不会有任何变化:代码见 【29/01】 ---- 下面通过使用 FixedResolutionViewport 视口,实现固定视口尺寸的需求。...此时游戏视口尺寸和 窗口尺寸 就不是一个概念了。无论应用窗口有多大,对游戏而言视口尺寸是恒定的。如下白色背景构件添加到游戏场景中,布满视口,视口会根据大小来适应窗口 ,不在视口区域内的部分会显示底色。...【29/02】 比如上图中默认相机的视口尺寸是 900*600 ,并不是指白色区域的是 900*600 逻辑像素。另外,可以看到角色的尺寸没有改动,但在这个视口尺寸下,就会显得较小。...---- 到这里,关于相机和视口就简单地介绍完毕。

    1K20

    偏移量、客户区大小、视口大小、滚动大小、确定元素大小

    两个属性: clientWidth:width+左右内边距 clientHeight:height+上下内边距 alert(someElement.clientWidth); 3、视口大小 ①innerWidth...和innerHeight表示视口大小(不包含ie8) IE8及更早版本通过DOM提供了页面可见区域: ② document.documentElement.clientWidth和document.documentElement.clientHeight...(标准模式) document.body.clientWidth和document.clientHeight(混杂模式) 取得视口大小的跨浏览器的解决方案: var pageWidth=window.innerWidth...也可以设置元素的滚动位置) 5、确定元素的大小 getBoundingClientRect( )方法,这个方法会返回一个矩形对象,包含4个属性left、top、right和bottom,给出了元素在页面中相对于视口的位置

    1.5K20

    第119天:移动端:CSS像素、屏幕像素和视口的关系

    移动前端中常说的 viewport (视口)就是浏览器显示页面内容的屏幕区域。...一、视口 1、layout viewport(布局视口)   一般移动设备的浏览器都默认设置了一个viewport 元标签,定义一个虚拟的layout viewport(布局视口),用于解决早期的页面在手机上显示的问题...2、visual viewport(视觉视口)和物理像素 visual viewport(视觉视口)物理屏幕的可视区域,屏幕显示器的物理像素,同样尺寸的屏幕,像素密度大的设备,硬件像素会更多。...)的宽度设置为 ideal viewport(理想视口)的宽度,initial-scale=1.5 表示将layout viewport(布局视口)的宽度设置为 ideal viewport(理想视口)...布局宽度:布局视口的逻辑像素的数量 屏幕宽度:屏幕的逻辑像素的数量(视觉视口、可见视口、虚拟视口) 逻辑宽度:逻辑像素的数量 视觉宽度:横向长度 chrome 实验结论:桌面浏览器设置viewport

    1.7K50
    领券