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

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

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

1.3K30

前端开发-

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

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

    第118天:移动端开发——

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

    94520

    浅谈移动端中的(viewport)

    而移动端则较为复杂,它涉及到三个:布局(Layout Viewport)、视觉(Visual Viewport)和理想(Ideal Viewport)。 本文主要讨论移动端中的。...CSS 像素(CSS pixels) 是 CSS 和 JS 中使用的一个抽象概念。它和物理像素之间的比例取决于屏幕的特性(是否为高密度)以及用户进行的缩放,由浏览器自行换算。...因此,引入了布局、视觉和理想三个概念,使得移动端中的与浏览器宽度不再相关联。...视觉(visual viewport) 视觉是用户当前看到的区域,用户可以通过缩放操作视觉,同时不会影响布局。 ?...视觉和缩放比例的关系为: 当前缩放值 = 理想宽度 / 视觉宽度 所以,当用户放大时,视觉将会变小,CSS 像素将跨越更多的物理像素。

    2.1K20

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

    比如 AndroidStudio 的文件树和编辑器区域,当宽度较窄时,水平方向通过拖拽底部滚动条来滚动。...到这里,就离真相越来越近了, buildCodeArea 方法中很可能就是区域双向滑动实现的场所。...如下所示,蓝色区域内有一行文字,当窗口宽度缩小到文本溢出时,底部会呈现滑动条支持水平滑动: 这里先总结一下实现区域的双向滚动的步骤: 需要两个可滑动的: SingleChildScrollView...需要两个 Scrollbar 用于控制滑动,并且指定 ScrollController, 关联 [滑动] 和 [滑动条]。...tag3 和 tag4 处是准备两个可滑动,这里简单期间使用 SingleChildScrollView,其他滑动组件都可以。

    48620

    理想的viewport()并不存在

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

    20730

    js事件

    中的值类型:String,Number,Boolean,Null,Object,Function 8.JS中的字符型转换成数值型:parseInt(),parseFloat() 9.JS中的数字转换成字符型...:(""+变量)10.JS中的取字符串长度是:(length) 11.JS中的字符与字符相连接使用+号. 12.JS中的比较操作符有:==等于,!...=不等于,>,>=,<.<= 13.JS中声明变量使用:var来进行声明 14.JS中的判断语句结构:if(condition){}else{} 15.JS中的循环结构:for([initial expression...HTML: 51.当超链和ONCLICK事件都有时,则老版本的浏览器转向a.html,否则转向b.html.例:<a href="a.html" onclick......的多重继续. 73.JS中的self指的是当前的窗口 74.JS中状态栏显示内容:window.status="内容" 75.JS中的top指的是框架集中最顶层的框架 76.JS中关闭当前的窗口:

    10.8K110

    js动画事件_JavaScript事件

    js之动画事件 首先,动画事件主要包括以下三个animationstart,animationiteration和animationend事件,下面做简单分别介绍。...animationstart 该事件在css动画开始播放时触发 animationiteration 该事件在css动画重新播放时触发 animationend 该事件在css动画结束播放时触发 我们知道...animation:name duration timing-function delay iteration-count direction; 分别是:动画名称 动画持续事件 动画运行速度曲线 动画开始时的运行时间...this.innerHTML="动画正在运行"; x.style.background="pink"; } function myanimationiterration() //动画再次运行触发,同样也是通过事件监听...this.innerHTML="动画重新运行"; x.style.background="greenyellow"; } function myanimationend() //动画运行结束时触发,同样也是通过事件监听事件

    18.4K10

    Js 事件委托(事件代理)

    一、概述 事件委托,又叫事件代理。事件委托就是利用事件冒泡,只指定一个事件处理程序,就可以管理某一类型的所有事件。 例子:有三个同事预计会在周一收到快递。...二、为什么是使用事件委托 一般来说,dom需要有事件处理程序,我们都会直接给它设事件处理程序就好了,那如果是很多的dom需要添加事件处理呢?...,这就是为什么性能优化的主要思想之一就是减少DOM操作的原因;如果要用事件委托,就会将所有的操作放到js程序里面,与dom的操作就只需要交互一次,这样就能大大的减少与dom的交互次数,提高性能; 每个函数都是一个对象...三、事件委托原理 事件委托利用的是事件冒泡原理,将事件绑定到父级元素上,当点击子元素时,通过事件冒泡将事件传递到父级元素。  四、总结: 那什么样的事件可以用事件委托,什么样的事件不可以用呢?...适合用事件委托的事件:click,mousedown,mouseup,keydown,keyup,keypress。

    11.4K30

    试试动态单位之 dvh、svh、lvh

    翻译一下: 大(Large Viewport):大小假设任何动态扩展和缩回的 UA 界面都没有展开 小视(Small Viewport):大小假设任何动态扩展和缩回的 UA 界面都展开了...因此,对应到高度之上,其状态大致如下: 理解了大与小视之后,再理解动态就轻松了些。...简单而言,动态的意思是: 动态工具栏展开时,动态等于小视的大小 当动态工具栏被缩回时,动态等于大的大小 因此,也就能得到下面这张图: 其中,dvh、dvw、dvmax、dvmin 对标...同理去理解大、小视下的 lvi、lvb、dvi、dvb。...分别是: 大(Large Viewport) 小视(Small Viewport) 动态(dynamic viewport) 它们的出现,极大的弥补了之前 vh/vw 等单位存在的问题。

    1.9K20

    js事件循环

    首先,我们来解释下事件循环是个什么东西: 就我们所知,浏览器的js是单线程的,也就是说,在同一时刻,最多也只有一个代码段在执行,可是浏览器又能很好的处理异步请求,那么到底是为什么呢?...我们先来看一张图(这张图来自于http://www.zcfy.cc/article/node-js-at-scale-understanding-the-node-js-event-loop-risingstack...从上图我们可以看出,js主线程它是有一个执行栈的,所有的js代码都会在执行栈里运行。...原因:因为一开始js主线程中跑的任务就是macrotask任务,而根据事件循环的流程,一次事件循环只会执行一个macrotask任务,因此,执行完主线程的代码后,它就去从microtask队列里取队首任务来执行..., 以及借鉴了其他优秀文章 参考: http://www.zcfy.cc/article/node-js-at-scale-understanding-the-node-js-event-loop-risingstack

    18.8K41
    领券