设备像素与CSS像素的区别是什么? EM,REM 的计算规则是什么?实际应用中如何选择? 什么是视口 viewport,布局视口,视觉视口,理想视口的区别? 百分比单位和视口单位的计算规则是什么?...我们期望页面可以根据用户的设备环境,比如系统,分辨率,屏幕尺寸等因素,进行自发式调整,提供更适合当前环境的阅读和操作体验,对已有和未来即将出现的新设备有一定的适应能力。 这就是响应式设计的理念。...响应式设计里,vw 和 vh 常被用于布局,因为它们是相对于视口的, vw,viewport width,视口宽度,所以 1vw = 1% 视口宽度 vh,viewport height,视口高度,所以...1vh = 1% 视口高度 以 IPhone X 为例,vw 和 CSS 像素的换算如下, <!...,以更好地优化不同尺寸大小设备的用户体验。
缺点:因为宽度使用%百分比定义,但是高度和文字大小等大都是用px来固定,所以在大屏幕下显示效果会变成有些页面元素宽度被拉的很长,但是高度、文字大小还是和原来一样,显示非常不协调 栅格化布局 将网页宽度人为的划分成均等的长度...改变屏幕分辨率可以切换调用相应的布局(页面元素位置发生改变而大小不变),但在每个静态布局中,页面元素不随窗口大小的调整发生变化。可以把自适应布局看作是静态布局的一个系列。 ...在这种布局方式下,当视口大小低于设置的最小视口时,界面会出现显示不全,溢出,并出现滚动条。而且当需求改变时,可能会改动多套代码。 ...自适应对页面的屏幕适配实在一定的范围,比如:pc 端 > 1024px; 平板 768 ~ 1024px; 手机端 < 768px; 响应式是一套页面同时兼容在 pc 端、平板和手机端的各个不同视口,而不是为每个终端做一个特定的版本...相同点: 都是通过检测视口分辨率,使页面适应不同分辨率的视口。
, y, width, height); x: 用来设定视口的左下角水平坐标。...默认值:0 y: 用来设定视口的左下角垂直坐标。默认值:0 width: 用来设定视口的宽度。默认值:canvas 的宽度 height: 用来设定视口的高度。...默认值:canvas 的高度 当你第一次创建 WebGL 上下文的时候,视口的大小和 canvas 的大小是匹配的。...然而,如果你重新改变了canvas的大小,你需要告诉 WebGL 上下文设定新的视口,因此这里作为初次创建这行代码可以省略 */ context.viewport(0, 0, context.canvas.width...,且三角形大小根据浏览器窗口大小自适应。
在 PC 端上, 元素的宽度被设置为 100% 时,等同于视口大小,等同于浏览器的窗口大小。...为了让移动端也能正常显示未适配移动设备的页面,从而引入布局视口和视觉视口的概念。 布局视口(layout viewport) 布局视口的宽度默认为 980px,通常比物理屏幕宽。...CSS 布局会基于布局视口进行计算。移动设备的浏览器基于虚拟的布局视口去渲染网页,并将对应的渲染结果缩小以便适应设备实际宽度,从而可以完整的展示站点内容且不破坏布局结构。...如果不进行 viewport 元标签的设置,可能会导致开发者设定的较小宽度的媒体查询永远不会被使用,因为默认的布局视口宽度为 980px。
CSS&HTML面经专题——移动端响应式布局 1、Viewport视口 在移动端viewport视口(pc端没有这个概念)就是浏览器显示页面内容的屏幕区域。...视觉视口不会影响布局视口的宽度和高度。 固定大小——跟屏幕大小相同,在上面。 layout viewport(布局视口):布局视口定义了pc网页在移动端的默认布局行为。...也就是说,在不设置网页viewport的情况下,pc端的网页默认会以布局视口为基准,在移动端进行展示。...于是想要自适应各种屏幕就需要动态设置font-size: 通过JS重置font-size(以iPhone6为基准) 这时候1rem在iPhone6下就是100px,在iPhone 6 plus...自适应布局也从PC延伸到手机,成为网页设计时候的需求. (2)概念 就是宽度自适用布局,在不同大小的设备上,随着屏幕宽度缩放,网页以等比例的形式缩放宽度(包括内容)),不管屏幕宽度为多少,网页主体排版布局总是一样的
页面响应式 在进行项目交付的场景中,常常会存在项目系统在不同设备,不同屏幕尺寸下使用和展示。因此在开发过程中需要针对此场景做针对性处理。...一般来说,在处理这样的问题时,我们需要开发和提供不同的布局,通过检测视口的分辨率,判断当前访问设备的种类,请求不同的页面布局从而提供尺寸较为合适的展示场景。...活字格为用户提供了3种设置模式,分别是固定模式、自适应模式和范围模式,通过设置行高、列宽的调节模式为自适应模式或范围模式,可使页面呈现流式布局,使页面的布局更加灵活。...固定模式 固定模式下,行高、列宽为固定的大小,单位为像素,不会随着展示屏幕的变化而变化,如果页面所有被设定了固定模式的行列总像素已经大于了浏览器的宽度/高度,那浏览器中就会出现横向/纵向滚动条。...当对某个组件设置了自适应之后,组件会根据内部的内容动态的变化自己的高度或宽度,比如文本框,会根据输入的文字内容来动态调节自己的框体大小,附件单元格会按照数据的多少来扩展高度。
px和视口 媒体查询 百分比 自适应场景下的rem解决方案 通过vw/vh来实现自适应 一、px和视口 在静态网页中,我们经常用像素(px)作为单位,来描述一个元素的宽高以及定位信息。...视口 广义的视口,是指浏览器显示内容的屏幕区域,狭义的视口包括了布局视口、视觉视口和理想视口 (1) 布局视口(layout viewport) 布局视口定义了pc网页在移动端的默认布局行为,因为通常pc...也就是说在不设置网页的viewport的情况下,pc端的网页默认会以布局视口为基准,在移动端进行展示。因此我们可以明显看出来,默认为布局视口时,根植于pc端的网页在移动端展示很模糊。...视觉视口的定义,就像拿着一个放大镜分别从不同距离观察同一个物体,视觉视口仅仅类似于放大镜中显示的内容,因此视觉视口不会影响布局视口的宽度和高度。...比如给小屏幕手机设置@2x图,为大屏幕手机设置@3x图,通过媒体查询就能很方便的实现。 但是媒体查询的缺点也很明显,如果在浏览器大小改变时,需要改变的样式太多,那么多套样式代码会很繁琐。
最初,它将如下图所示: 当容器的宽度变小时,我们希望缩小图像的大小以适应可用空间。我们可以通过使用宽度或高度的百分比值(例如:宽度:20%)来做到这一点,但这并没有给我们太多的控制权。...editors=1100 流体英雄高度 与前面的示例相关,英雄部分的高度可以根据视口大小而不同。因此,我们倾向于通过媒体查询或使用视口单元来改变它。...,但我们需要注意不要在较大的视口上设置很大的高度,然后,我们需要设置一个最大高度。....hero { min-height: clamp(250px, 50vmax, 500px); } 调整屏幕大小时,你会注意到高度会根据视口宽度逐渐变化。...间距 有时,我们可能需要根据视口宽度更改组件或网格的间距。不带 CSS 比较功能!我们只需要设置一次。
width 视口宽度 height 视口高度 device-width 设备屏幕的宽度 device-height 设备屏幕的高度 orientation 横向还是纵向状态... aspect-ratio 视口的宽高比,如16/9 device-aspect-ratio 屏幕的宽高比 color 每种颜色的位数,如16 color-index 设备颜色索引表中的颜色数...行高一般相对与元素本身的文字大小,而不是父元素的文字大小。 em作为一种测量单位,指的是特定字母的宽度和高度相对于特定字体磅值的比例。 ...让图片随视口缩放 要先删除图片标签的宽度和高度属性,再设置百分比。 ...标签,以适应不同浏览器对视频格式的支持,依次方法还可针对老浏览器设置备用视频,加入flash的标签,更进一步,还可以提供下载链接。
(Viewport) 视口(Viewport)是指当前可见的计算机图形区域,在浏览器中,是指能用来显示网页的区域。...当可视视口比布局视口小时,浏览器网页就会出现横向滚动条,以支持用户浏览整个网页的内容。...=no"> Viewport 属性: 属性 含义 取值 width 定义视口的宽度,单位为像素 正整数或 device-width(设备的宽度) height 定义视口的高度,单位为像素 正整数或 device-height...=1, minimum-scale=1"> 如何合理设置 rem 的大小呢?...当页面需要适应不同的屏幕大小以及设备类型时确保元素拥有恰当的行为的布局方式,提供一种更加有效的方式来对一个容器中的子元素进行排列、对齐和分配空白空间。
Grid网格布局 网格属性的大小和宽度都是相对于网格容器元素本身。 grid-template-columns: 20% 20%; //定义网格的列数和网格宽度。...initial-scale属性用于设置页面初始的缩放比例,缩放比例为理想视口与视觉视口的比值。 理想视口:文档宽度和屏幕宽度一致。...视觉视口的宽度 = 理想视口宽度 / 缩放比例 参考链接:https://blog.csdn.net/leman314/article/details/111936863 13. px px的大小在不同屏幕上是一样的...21. object-fit object-fit CSS 属性指定可替换元素的内容应该如何适应到其使用的高度和宽度确定的框。...35. fixed fixed:元素会被移出正常文档流,并不为元素预留空间,而是通过指定元素相对于屏幕视口(viewport)的位置来指定元素位置。元素的位置在屏幕滚动时不会改变。
响应式布局 响应式布局是一种能够适应不同屏幕尺寸和设备的网页设计方法。通过使用响应式布局,可以使网页在不同的设备上保持良好的显示效果,无论是在桌面电脑、平板电脑还是手机上。...媒体查询 使用 CSS 的媒体查询可以根据设备的特征(如屏幕宽度、高度、设备类型等)应用不同的样式。这使得你可以为不同的屏幕尺寸定义不同的布局。...img src="zhaojian.jpg" alt="Responsive Image"> 效果: 视口设置 使用 标签设置视口,以确保页面在移动设备上正确缩放。...,将文档放大到其预期大小的 100%,在移动端以你所希望的为移动优化的大小展示文档。...和视口元标签一起,你可以使用另外几个设定,但大体说来,上面那行就是你想要使用的。 initial-scale:设定了页面的初始缩放,我们设定为 1。 height:特别为视口设定一个高度。
Vmin 单位 vmin表示视口的宽度和高度中的较小值,也就是vw 和 vh 中的较小值。如果视口宽度大于其高度,则将根据高度计算该值。 我们以下面的例子为例。 ?...在我的职业生涯中,我没有使用固定高度的页脚,因为在例如不同的屏幕尺寸下,此footer是不可行的。...2.第二种解决方案:Flexbox和视口单位(推荐) 通过将100vh设置为body元素的高度,然后可以使用flexbox来使main元素占用剩余空间。...通过使用CSS网格和视口单位,我们可以使其完全动态的响应式。...纵横比 我们可以使用vw单位创建响应元素,以保持其纵横比,而不管视口大小如何。 首先,需要先确定所需的纵横比,对于此示例,使用9/16。
「使用值」是浏览器进行最终调整和转换后的属性值。在此过程中,相对单位会转换为绝对单位。对于有屏幕的媒体(即有屏幕的设备),物理单位会转换为等效的像素单位。...image.png 使用 ex 单位设置的尺寸是相对于第一个可用字体的已用 x 高度计算的。rex 单位的作用与此类似,但它是相对于根元素的 ex 单位而不是最近的祖先来计算大小的。...另一方面,动态视口尺寸并不稳定。当方向改变或用户滚动时,它们可能会改变。例如,当浏览器界面影响视口大小时,高度值为 100dvmax 的元素就会改变大小。...选择正确的单位可以提高网站的可读性、可用性和可访问性。当你知道输出媒介的物理尺寸时,请使用绝对单位。字体相对单位和视口相对单位非常适合创建适应多种屏幕尺寸的布局。...容器相对单位非常适合创建可重复使用的组件,以适应各种布局。
移动端页面需要具备响应式设计,以适应不同大小和分辨率的移动设备屏幕。使用流体网格布局、弹性图片和媒体查询等技术,确保页面在各种设备上都能良好显示。...是指浏览器用来显示网页的区域,它决定了网页在用户设备上的显示效果。由于移动设备和桌面设备有不同的屏幕尺寸和分辨率,使用视口可以使网页在不同设备上得到合适的显示。viewport 视口。...在移动端常用到的是 rem,通过使用 rem 单位,可以相对于根元素的字体大小来定义布局和元素的尺寸,从而使网页更灵活地适应不同的屏幕尺寸。...)是一种用于在容器中进行布局的模型,它使得容器的子元素能够以弹性的方式排列,可以配合 rem 处理尺寸以适应不同屏幕尺寸和设备。...,给容器设置属性用来决定容器中的项目如何排列,如主轴方向、是否换行、主轴和交叉轴的对齐方式等,可以理解为宏观的设定。
在前端开发中经常需要按不同屏幕尺寸来进设计达到PC和移动端响应式。我们一般使用CSS媒体查询来检测视口宽度或高度,然后根据该模式改变设计。 这就是在过去10年中设计Web布局的方式。...我们不仅为屏幕尺寸设计,还考虑组件在容器宽度变化时应如何适应。 现在,设计系统变得越来越流行。设计团队将构建一组规则和组件,以便其他成员可以基于它们构建页面。...随着CSS容器查询的到来,我们还将设计一个组件应该如何根据其父组件的宽度进行调整。 考虑以下设计: 请注意,我们有标题、文章部分、引文和时事通讯。它们中的每一个都应该适应父视图的宽度。...注意我是如何将每个变体映射到一个特定的上下文,而不是一个视口。为了进一步证明这一点,我们配合 CSS网格一起使用时,组件的行为会有何不同。...当有足够的空间时,清单将展开并显示每个用户的名称。聊天列表的父元素可以是动态调整大小的元素(例如:使用CSS视口单元,或CSS比较函数)。
常见的适配方案 百分比+固定高度布局方案 固定屏幕为理想视口宽度 少许的媒体查询设置字体 水平百分比布局 水平方向部分也可以使用弹性布局 Rem解决方案 Rem的大小取值:根据页面的dpr动态改变...百分比与固定高度布局方案 此方案的前提是设置屏幕为理想视口,然后通过水平百分比布局或者弹性布局,垂直方向一般用固定像素。 优点:布局快速简单方便、在移动设备中水平表现良好差异不大。...2.1 横向百分比 + 纵向高度固定 首先看案例: 拉勾网移动端首页顶部的logo区域,不管如何变化浏览器的宽度,高度不变化,宽度自适应。 ?...随着设备尺寸的变宽,元素高度和宽度都相应放大 可以通过设置元素的宽高直接用rem单位,然后根据不同的屏幕的宽度设置不同的html字体的大小,来实现自动适配不同屏幕的目的。...缩放自适应布局方式(推荐***) 简单点说就是,开发的时候根据设计搞完全还原像素,然后根据屏幕的宽度通过js动态改变页面的缩放,恰好是理想视口的大小。 原理核心就是修改页面mate标签的缩放。
常见的适配方案 百分比+固定高度布局方案 固定屏幕为理想视口宽度 少许的媒体查询设置字体 水平百分比布局 水平方向部分也可以使用弹性布局 Rem解决方案 Rem的大小取值:根据页面的dpr动态改变 Rem...百分比与固定高度布局方案 此方案的前提是设置屏幕为理想视口,然后通过水平百分比布局或者弹性布局,垂直方向一般用固定像素。 优点:布局快速简单方便、在移动设备中水平表现良好差异不大。...2.1 横向百分比 + 纵向高度固定 首先看案例: 拉勾网移动端首页顶部的logo区域,不管如何变化浏览器的宽度,高度不变化,宽度自适应。...随着设备尺寸的变宽,元素高度和宽度都相应放大 可以通过设置元素的宽高直接用rem单位,然后根据不同的屏幕的宽度设置不同的html字体的大小,来实现自动适配不同屏幕的目的。...缩放自适应布局方式(推荐***) 简单点说就是,开发的时候根据设计搞完全还原像素,然后根据屏幕的宽度通过js动态改变页面的缩放,恰好是理想视口的大小。 原理核心就是修改页面mate标签的缩放。
这个时候如果设置了 padding 的值也是 2em ,虽然 font-size 和 padding 都是 2em ,但是它们的值是不一样的,padding 的大小为 64px ,font-size 先取到...这个便捷的相对单位,我们就有了一些奇怪的操作,比如用 js 设置根元素大小这个操作,就是将网页的根元素字号根据屏幕的大小动态设置为一个固定值,然后在页面中根据 ui 给出的图,换算成 rem 值,进行各种适配...,字号逐渐增加,即便是对一个组件进行不同的自适应,你只需要更改对应组件的 font-size 即可 当然 css 中相对单位还有常见的内容 视口相对单位 vh: 视口高度的1/100 vw: 视口宽度的...1/100 vmin: 视口宽度或者高度中较小的一方1/100 vmax: 视口宽度或者高度中较大的一方1/100 50vh 也就是视口高度的一半 刚才我们使用媒体查询定义了根元素 font-size...,当页面宽度变化到指定像素的时候会突然变成我们设置的内容,现在既然有了 vw ,是不是可以使用 vw 进行设置,视口改变时,元素自然过渡 实践一下 :root{ font-size: 2vw }
上面还能选择手机的型号. 02 视口 视口(viewport)就是浏览器显示页面内容的屏幕区域.视口可以分成布局视口,视觉视口和理想视口,当然,我们只需要理想视口....布局视口layout viewport 一般移动设备的浏览器都默认设置了一个布局视口,用于解决早期的PC端页面在手机上显示的问题....理想视口 ideal viewpoint 为了使网站在移动端有最理想的浏览和阅读宽度而设定....单位:长度|百分比|cover|contain cover把背景图片扩展至足够大,以使背景图像完全覆盖背景区域. contain把图像扩展至最大尺寸,以使其宽度和高度完全适应内容区域. cover和contain...响应式兼容PC移动端 比如三星官网,通过判断屏幕宽度来改变样式,以适应不同终端. 缺点: 制作麻烦,需要花很大精力去调兼容性问题.
领取专属 10元无门槛券
手把手带您无忧上云