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

CSS Viewport 单位,很多人还不知道使用它来快速布局!

Vmin 单位 vmin表示视口的宽度高度中的较小值,也就是vw vh 中的较小值。如果视口宽度大于其高度,则将根据高度计算该值。 我们以下面的例子为例。 ?...在这种情况下,值将根据视口高度计算,因为它小于宽度。...通过使用CSS网格视口单位,我们可以使其完全动态的响应式。...使用时,间距将基于视口宽度高度,这对于使布局更具动态性可能很有用。 模态框 对于模态,我们需要将它们从视口顶部推入。 通常,使用top属性进行此操作,并使用百分比或像素值。...vw = (Pixel Value / Viewport width) * 100 视口宽度用于估计像素值与所需vw单位之间的比率

3.1K30

CSS垂直居中的七个方法

七种垂直居中的方法 设定行高(line-height) 添加伪元素 calc动态计算 使用表格或假装表格 转变 绝对定位 使用Flexbox 1.设定行高(line-height) 设定行高是垂直居中最简单的方式....div0 :: before { content:''; 宽度:0; 高度:100%; 显示:行内块; 位置:相对; 垂直对齐:中间; 背景:#f00; } 3.calc动态计算 看到这边或许会有疑问...这时候就必须用到CSS特有的calc动态计算的能力,我们只要让要居中的div的top属性,与上方的距离是“ 50%的外框高度-50%的div高度”,就可以做到垂直居中,至于为什么不用margin-top....use-absolute { 位置:相对; 宽度:200像素高度:150px; 边框:1px实线#000; } .use-absolute div { position:absolute;....use-flexbox { display:flex; align-items:center; 证明内容:中心; 宽度:200像素高度:150px; 边框:1px实线#000; } .use-flexbox

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

响应式布局的实现

媒体查询 通过使用CSS媒体查询来实现响应式布局,针对不同的媒体类型设置不同的样式规则,可以根据视窗、设备高度宽度、设备方向、分辨率等进行不同CSS适配。 使用link链接 <!...color-index: 定义在输出设备的彩色查询表中的条目数,如果没有使用彩色查询表,则值等于0。 device-aspect-ratio: 定义输出设备的屏幕可见宽度高度比率。...,使用em可以使元素根据字体大小的动态调整来制作响应式布局。...因此,如果通过rem来实现响应式的布局,只需要根据视图容器的大小,动态的改变根元素的font-size即可。 vh vw vmin vmax vh: 相对于视窗的高度,1vh等于视窗高度的1%。...vw: 相对于视窗的宽度,1vw等于视窗宽度的1%。 vmin: vwvh中的较小值。 vmax: vwvh中的较大值。 缩放比例 通过动态地控制网页视图的缩放比例来制作响应式布局。

1.9K30

08-移动端开发教程-移动端适配方案

常见的适配方案 百分比+固定高度布局方案 固定屏幕为理想视口宽度 少许的媒体查询设置字体 水平百分比布局 水平方向部分也可以使用弹性布局 Rem解决方案 Rem的大小取值:根据页面的dpr动态改变 Rem...页面加载完成后用js动态根据dpr改变页面的缩放值 推荐使用: flexible方案 2....如果想要精确覆盖要么通过js实现,要么用最新的浏览器已经支持的calc实现。 以上假设设计图是640像素。然后在640像素的设备上,1rem = 100px方便计算盒子的尺寸,可以直接口算。...3.2 js实现动态改变根元素的字体大小 通过js动态获取屏幕的宽度(document.clientWidth)然后根据屏幕宽度动态计算出rem的实际值。...比如: 头像在不同设备上一般都会设置固定像素的大小 宽度可能超过50%的盒子尽量用百分比或者弹性盒子布局 高度宽度需要同时根据屏幕自动缩放的时候,推荐使用rem布局 5.

3.5K100

08-移动端开发教程-移动端适配方案

常见的适配方案 百分比+固定高度布局方案 固定屏幕为理想视口宽度 少许的媒体查询设置字体 水平百分比布局 水平方向部分也可以使用弹性布局 Rem解决方案 Rem的大小取值:根据页面的dpr动态改变...页面加载完成后用js动态根据dpr改变页面的缩放值 推荐使用: flexible方案 2....如果想要精确覆盖要么通过js实现,要么用最新的浏览器已经支持的calc实现。 以上假设设计图是640像素。然后在640像素的设备上,1rem = 100px方便计算盒子的尺寸,可以直接口算。...3.2 js实现动态改变根元素的字体大小 通过js动态获取屏幕的宽度(document.clientWidth)然后根据屏幕宽度动态计算出rem的实际值。...比如: 头像在不同设备上一般都会设置固定像素的大小 宽度可能超过50%的盒子尽量用百分比或者弹性盒子布局 高度宽度需要同时根据屏幕自动缩放的时候,推荐使用rem布局 5.

3K60

H5移动端开发学习总结

每个像素可以根据操作系统设置自己的颜色亮度。...CSS像素:px(设备独立像素) 逻辑像素,浏览器使用的抽象单位(之所以叫抽象单位,是因为其可以根据不同的设备不同的关系来变大变小,所以称为抽象单位)为Web开发者创造的,在CSSJavaScript...再比如以iphone6为例: 设备宽高为375×667,可以理解为设备独立像素(或CSS像素)。 其dpr为2,根据上面的计算公式,其设备物理像素就应该×2,为750×1334。...当这个比率为1:1时,使用1个设备像素显示1个CSS像素。当这个比率为2:1时,使用4个设备像素显示1个CSS像素,当这个比率为3:1时,使用9(33)个设备像素显示1个CSS像素。...如果在页面中我们使用rem结合js动态计算font-size值来实现多屏幕适配,这种方式可以无限适配最大和最小的终端屏幕。

94320

不要再用js设置rem了,现代css自适应方案来了

css 虽然是一个绝对单位,但是它并不等于显示器的像素,需要通过 dpr 进行换算 最常见的相对单位是 em rem em 1em 表示的是当前元素的字号,可以看到 1em 是 16px,因为当前元素的...、width、border-radius 这些属性的时候,使用 em 很方便,会动态根据 font-size 变化 那既然元素的 em 是根据当前元素的 font-size 来的,那给当前元素设置 font-size...,然后根据 font-size 计算出padding 这里增加了计算的复杂性,所以一般font-size我们给固定的值就好,否则就会多层嵌套导致最终的结果不符合预期,所以如果不小心使用 em ,会让 em...中相对单位还有常见的内容 视口相对单位 vh: 视口高度的1/100 vw: 视口宽度的1/100 vmin: 视口宽度或者高度中较小的一方1/100 vmax: 视口宽度或者高度中较大的一方1/100...50vh 也就是视口高度的一半 刚才我们使用媒体查询定义了根元素 font-size ,当页面宽度变化到指定像素的时候会突然变成我们设置的内容,现在既然有了 vw ,是不是可以使用 vw 进行设置,视口改变时

4.9K41

css3新发现height:100vh;

calc calc是英文单词calculate(计算)的缩写,是css3的一个新增的功能,用来指定元素的长度。...比如说,你可以使用calc()给元素的border、margin、pading、font-sizewidth等属性设置动态值。为何说是动态值呢?因为我们使用的表达式来得到的值。...不过calc()最大的好处就是用在流体布局上,可以通过calc()计算得到元素的宽度calccss3提供的一个在css文件中计算值的函数: 用于动态计算长度值。...“/” 运算; calc()函数使用标准的数学运算优先级规则; calc(100vh - 10px) 表示整个浏览器窗口高度减去10px的大小 calc(100vw - 10px) 表示整个浏览器窗口宽度减去...10px的大小 1 2 一般用来设置流式布局宽高,当然,你可以使用calc()给元素的border、margin、pading、font-sizewidth等属性设置动态calc()的兼容性如下

57320

css3中的width:100vh以及calc(100vh + 10px)

calc calc是英文单词calculate(计算)的缩写,是css3的一个新增的功能,用来指定元素的长度。...比如说,你可以使用calc()给元素的border、margin、pading、font-sizewidth等属性设置动态值。为何说是动态值呢?因为我们使用的表达式来得到的值。...不过calc()最大的好处就是用在流体布局上,可以通过calc()计算得到元素的宽度calccss3提供的一个在css文件中计算值的函数: 用于动态计算长度值。..., “/” 运算; calc()函数使用标准的数学运算优先级规则; calc(100vh - 10px) 表示整个浏览器窗口高度减去10px的大小 calc(100vw - 10px) 表示整个浏览器窗口宽度减去...10px的大小 一般用来设置流式布局宽高,当然,你可以使用calc()给元素的border、margin、pading、font-sizewidth等属性设置动态calc()的兼容性如下,使用时需注意

70320

【面试题】CSS知识点整理(附答案)

伪类 伪类 用于当元素处于某个状态时,为其添加对应的样式,这个状态是根据用户行为而动态变化的。比如说,用户悬停在指定的元素时,我们可以通:hover来描述这个元素的状态。...图片来源网络 CSS3 规范中的要求使用双冒号 (::) 表示伪元素,以此来区分伪元素伪类,比如::before ::after 等伪元素使用双冒号 (::),:hover :active 等伪类使用单冒号...浏览器根据这个属性,计算主轴是否有多余空间。它的默认值为auto,即项目的本来大小。...calc() calc(): CSS3中新增的一个函数, 用于动态计算宽/高, 语法非常简单,就像我们小时候学加 (+)、减(-)、乘(*)、除(/)一样,使用数学表达式来表示 使用“+”、“-”、“*...” “/”四则运算; 可以使用百分比、px、em、rem等单位; 可以混合使用各种单位进行计算; 表达式中有“+”“-”时,其前后必须要有空格,如"width: calc(12%+5em)"这种没有空格的写法是错误的

1.5K40

Clamp()、Max() Min() CSS 函数的用例

CSS: .section-image { width: clamp(70px, 80px + 15%, 180px); } 通过设置最小、首选最大宽度,图像将根据其容器宽度缩小或增长,这是由于使用了固定值百分比...: 600px; } } 使用 CSS clamp(),我们可以只用一个 CSS 声明来设置最小、首选最大高度。...我们可以使用 CSS calc() 减去按钮宽度,它会起作用,但这不是 100% 灵活的。...min() 函数在 8px calc((100vw - 4px - 100%) * 9999) 的计算值之间进行比较,这将导致非常大的正数或负数。...为此,我们需要一种在 CSS使用以下公式的方法: 动态填充 = (视口宽度 - 包装宽度) / 2 感谢 CSS max() 函数,我们可以添加最小填充,以及在需要时切换到动态填充的方法。

1.5K20

长度单位、calc() 表达式

实际情况是与浏览器使用显示器的实际像素值有关,在目前大多数的设计者都倾向于使用像素(px)作为单位 em em表示元素的font-size属性的计算值,如果用于font-size属性本身,相对于父元素的...1/100 vw 布局视口宽度的 1/100 vmin 布局视口高度宽度之间的最小值的 1/100 vmax 布局视口高度宽度之间的最大值的 1/100 calc() 数学表达式(calculation...) 数学表达式calc()是CSS中的函数,主要用于数学运算。...使用calc()为页面元素布局提供了便利新的思路 数学表达式calc()是calculate计算的缩写,它允许使用+、-、*、/这四种运算符,可以混合使用%、px、em、rem等单位进行计算 兼容性:...IE9不支持用于backround-position 注意:+ - 运算符两边一定要有空白符 .test1{ border

78010

别整一坨 CSS 代码了,试试这几个实用函数

流体高度 有时候,我们页面的主区的高度需要根据视口大小而变化。这种场景,我们倾向于通过媒体查询或使用视口单位来改变这种情况。...600px; } } 但需要注意在较大的视口上高度不能太过高,所以我们需要设置一个最大高度,使用CSS clamp(),我们可以只用一个CSS声明来设置最小、首选最大高度。...动态 border Radius 一年前,发现了一个巧妙的CSS技巧。使用CSS max()函数,根据视口宽度,将卡片的border-radius 从 0px 切换到 8px。...CSS: 我们有一个 max() 函数,在 0px min()的计算值之间进行比较,并选择较大的值。...min() 函数在 8px calc((100vw - 4px - 100%) * 9999 的计算值之间进行比较,这会得到一个非常大的正数或负数。

66410

【前端面试题】关于一些js的一些面试题(金融行业),我和面试官扯了三个小时

Viewport Height,视窗的宽度高度,相当于 屏幕宽度高度的 1%,不过,处理宽度的时候%单位更合适,处理高度的 话 vh 单位更好。...一般电脑的分辨率有{1920*1024}等不同的分辨率 1920*1024 前者是屏幕宽度总共有1920个像素,后者则是高度为1024个像素 6.calc,support,media...答: calc()从字面我们可以把他理解为一个函数function。其实calc是英文单词calculate(计算)的缩写,是css3的一个新增的功能,用来指定元素的长度。...比如说,你可以使用calc()给元素的border、margin、pading、font-sizewidth等属性设置动态值。为何说是动态值呢?因为我们使用的表达式来得到的值。...不过calc()最大的好处就是用在流体布局上,可以通过calc()计算得到元素的宽度

70320

【震惊】padding-top的百分比值参考对象竟是父级元素的宽度

题目须知: 页面中有一个元素A,请实现以下需求: 元素A在页面内水平、垂直居中; 元素A距离页面左右的间距为10px,元素A的宽度随页面宽度变大而变大; 设置元素A的高度始终为宽度的一半; 只要是对CSS...那如何能设置让元素A的高度始终为宽度的一半呢?上代码~ 页面布局:要考虑DOM的结构CSS的样式 <!...100vw,实际宽度会受到弹性盒子的影响 */ width: 100vw; /* calc方法动态计算:height的值为宽度的1/2,所以是 (100vw - 20px) /... 在上述的代码中我们借助calc方法实现了设置元素的高度宽度的1/2 此时内心是否有些窃喜,又搞定了一个问题,饱含自信(傲娇)的目光看向了面试官。...100%,父级容器宽度的100%,实际宽度会受到弹性盒子的影响 */ width: 100%; height: 0; /* calc方法动态计算:padding-top

1.3K10

愈发熟练的 CSS 技巧

,下载下来用即可; 第一个参数是视觉设计稿的宽度,一般视觉设计稿有 750px,可以根据实际调整 第二个参数则是设置制作稿的最大宽度,超过 750px,则以 750px 为最大限制; 使用时候的换算比例...> 标签里面; 然后视觉设计稿大小,调整里面的最后两个参数值; 根据设计像素使用 rem 单位转换的视觉设计稿里面的 px 单位,例:750px = 7.5rem; 优劣 简单实用,基本上没有什么劣势...vh 之间的较小值 vmax : vw vh 之间的较大值 使用步骤 假设视觉设计稿的宽度是 750px 即 1vw = 7.5px,那么就得根据设计图的 px 值来转换 vw单位,为了避免这样的计算...//是否允许媒体查询转换为 px 复制代码 优劣 vw 的兼容性貌似还没那么好,有可能需要做降级处理,需要使用CSS Houdini CSS Polyfill 上一些针对 vw 单位做一个降级处理...;vw 在混合使用到 margin 的 px 时候 有可能超出100vw,目前使用 padding 来代替 marging 再配置上box-sizing可以解决,亦可以使用 csscalc() 函数来做一个计算

80620

前端css单位小结:vh、vw、百分比、rem、px、计算属性calc

前端css单位小结:vh、vw、百分比、rem、px、计算属性calc 1 vh 视口的高度,也就是眼睛可以看到屏幕的高度,如果你的屏幕分辩率为1920*1080,那么视口的高度就是1080px,vh可用于写自适应...一般给css div 的 height赋值用。 2 vw 与vh相对的,视口的宽度,同理,如果你的屏幕分辩率为1920*1080,那么视口的宽度就是1080px,vw可用于写自适应。...4 rem 根据根元素来变化大小,如果在根元素设置10px,那么1rem=10px。亦可用于自适应布局。...5 px 固定的像素点,虽然这个没办法自适应,但是,天下武功,为快不破,px可以很精确,是自适应比不了的,当我在做一些很精确的页面时,必然得用px来控制。...6 计算属性calc height: calc(~'100% - 7.4rem - 10px'); 这就是计算属性咯。可以计算出当前的值,然后再赋值。

87620

rem结合css3原生函数, 完成移动端各类屏幕适配

相信很多人接触的第一个网页尺寸单位是px, 表示一个像素点的大小 我们收到的设计师的设计稿也是以px为标准 ?...rem是一个很有意思的单位, 1rem的尺寸等于html的font-size的尺寸, 也就是 html{ font-size: 100px; } 那么, 1rem就等于100px 我们可以通过屏幕的宽度..., 动态改变 html下font-size的大小, 从而实现网页的缩放 calc是一个css3自带的函数, 可以实现简单的加减乘除(可以用来取代sass的部分功能) rem与calc结合使用, 就可以用极简单的代码实现...> // 获取设备像素比(dpr -> devicePixelRatio) var dpr = window.devicePixelRatio; // 动态设置设备缩放比...小结: rem是一个动态定义的单位, 结合css3自带的calc函数, 能让我们写一套代码, 轻松适配各种尺寸的屏幕, 另外, 写calc函数的时候, 运算符前后一定要留空格哦~

77020

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券