CSS中视窗单位和百分比单位的使用

CSS单位选择的艺术:何时何地选用何种单位 选择CSS单位时,应充分考虑设计需求、响应式策略、浏览器兼容性代码可维护性。像素适用于需要精确控制尺寸的固定元素,百分比视窗单位适用于创建响应式布局, 阅读详情

视窗(Viewport)单位

视窗(Viewport)单位是相对单位,意味着它们没有客观的尺寸。它们的大小是由视窗(Viewport)大小决定的。下面是四个与视窗(Viewport)有关的单位。

我将集中讨论前两个单位,因为它们更可能被使用。

在很多情况下,视口单位(vh和vw)和百分比单位在它们可以实现的功能方面是重叠的。然而,它们每个都有其明显的优点和缺点。概括的说:

当处理宽度的时候,%单位更合适。处理高度的时候,vh单位更好。

占满宽度的元素: % > vw

正如我所提到的,vw单位根据视窗的宽度决定它的大小。然而,浏览器是根据浏览器的窗口计算视窗大小的,包括了滚动条的空间。

如果页面延伸超过视口的高度——滚动条出现——视窗的宽度将会大于html元素的宽度。

Viewport > html > body

因此,如果你将一个元素设置为100vw,这个元素将会延伸到html和body元素范围之外。在这个例子中,我用红色边框包裹html元素,然后给section元素设置背景颜色。

因为这个细微的差别,当使一个元素横跨整个页面的宽度时,最好使用百分比单位而不是视口的宽度。

占满高度的元素:vh > %

在另一方面,当使一个元素跨越整个页面的高度时,vh远比百分比单位好。

因为用百分比定义的元素的大小是由它的父元素决定的,只有父元素也填满整个屏幕的高度时我们才能拥有一个填满整个屏幕的高度的元素。这通常意味着我们不得不把元素定位成固定的,为了使元素的父元素为html元素,或者依赖一些程序。

然而,用vh的话,就像下面写的那么简单:

CSS Code复制内容到剪贴板

.example {

height: 100vh;

}

不管.example元素如何嵌套,它还是能够相对于视窗尺寸设置大小。滚动条的问题也不是一个问题,因为现在大多数页面通常不会有水平滚动条。

这里有一些我们可以如何使用vh单位来轻松的创造一些设计的例子。

全屏的背景图片

vh单位一个典型的用途是用来创建一个横跨整个屏幕高度和宽度的背景图片,不管设备的大小。这用vh很容易实现:

CSS Code复制内容到剪贴板

.bg {

position: relative;

background: url(‘bg.jpg’) center/cover;

width: 100%;

height: 100vh;

}

占满全屏的内容块像“多页面”一样

同样地,我们也可以实现有“多页面”的效果,通过使页面的每个内容块跨越视口的整个高度和宽度。

CSS Code复制内容到剪贴板

section {

width: 100%;

height: 100vh;

}

我们可以用javascript来实现翻动页面的错觉。

CSS Code复制内容到剪贴板

$(‘nav’).on(‘click’, function() {

if ( $(this).hasClass(‘down’) ) {

var movePos = $(window).scrollTop() + $(window).height();

}

if ( $(this).hasClass(‘up’) ) {

var movePos = $(window).scrollTop() - $(window).height();

}

$(‘html, body’).animate({

scrollTop: movePos

}, 1000);

})

在区域内的图片

vh单位也可以用来控制在页面内的图片的大小。例如,在一篇文章中,我们可能想要任何的图片可以在页面上被完整的查看,不过屏幕的大小为多少。

做到这一点,我们可以这样解决:

CSS Code复制内容到剪贴板

img {

width: auto; /* 图片宽度根据高度按比例调整*/

max-width: 100%; /* 图片不超过父元素的宽度 */

max-height: 90vh; /* 图片不超过视口的高度 */

margin: 2rem auto;

}

深入解析CSS单位:全面理解与实战应用 选择合适的单位:根据设计需求响应式策略选择最恰当的单位。例如,对于固定尺寸的元素,使用像素;对于需要随父元素或视口尺寸变化的元素,使用百分比、emrem或视窗单位。避免深度嵌套的em:由于em基于当前元素的字体大小,深度嵌套使用可能导致难以预测的计算结果。优先考虑使用rem或固定单位避免此类问题。测试多设备与浏览器:不同设备浏览器可能对单位的解释略有差异,尤其是对于视窗单位。务必在多种环境下测试以确保良好的兼容性一致性。考虑性能:虽然CSS单位的选择一般不会显著影响性能,但在大量使用复杂计算(如。 阅读详情

相关推荐

KMS服务器一键部署与激活实战指南

本文详细介绍了KMS服务器的一键部署与激活实战指南,包括快速入门、安装步骤、服务管理技巧及常见问题排查。特别针对WindowsMac用户提供了Office激活的具体操作步骤,并分享了高级配置与优化方案,帮助IT管理员高效管理批量授权激活。

weixin_29305313的博客 434

CSS中的常见单位(px,%,em,rem,vw,vh,vmax,vmin,calc)

CSS中的常见单位区别

楠姐的博客 3082

CSS 百分比单位的含义及在编程中的应用

CSS 百分比单位是一种非常有用的单位,用于相对于父元素进行定位、布局自适应调整。它在编程中广泛应用于定义宽度、高度、位置、动画响应式布局等方面。通过灵活运用百分比单位,我们可以创建出具有适应性响应性的网页布局。希望本文对您理解 CSS 百分比单位的含义及其在编程中的应用有所帮助。如有任何疑问,请随时提问。

TechO_O的博客 343

视窗单位-vw/vh/vmin/vmax

视窗单位含义: vw、vh、vmin、vmax是一种视窗单位,是由视窗(Viewport)的大小决定的。视窗是浏览器实际显示内容的区域包含滚动条,不包括工具栏按钮的网页浏览器。 vw/vh/vmin/vmax vw 相对于视窗的宽度:视窗宽度100vw vh相对于视窗的高度:视窗高度100vh vmin/vmax:vw、vh中较小/大...

weixin_34372728的博客 668

CSS中有哪些单位

2. % (percentage):百分比单位,相对于父元素的特定属性的值进行计算。6. vh (viewport height):相对于视窗高度的百分比单位。5. vw (viewport width):相对于视窗宽度的百分比单位。1vw 等于视窗宽度的1%。4. rem:相对于根元素(html元素)的字体大小的单位。1. px (pixels):像素单位,是相对于屏幕上的单个像素点的长度单位。3. em:相对于父元素的字体大小的单位。13. ex:相对于字体x-height(小写字母x的高度)的单位

OStriueO的专栏 1583

常见的CSS布局单位%,px,em,rem,vh/wh应用场景

常见的CSS布局单位%,px,em,rem,vh/wh应用场景

weixin_57677300的博客 2476

深入了解CSS 元素尺寸单位:像素、百分比、em、rem viewport 单位

正确选择使用元素尺寸单位对于前端开发至关重要。不同的单位适用于不同的场景,我们需要根据具体情况灵活运用各种单位。希望本文对你理解使用前端 CSS 元素尺寸单位有所帮助!最后还是那句话:即使代码逻辑很简单,也值得记录下来。我的编程目标是避免重复造轮子!😊探索更多有趣知识,欢迎关注我的微信公众号!每天分享精彩内容,与你一同探寻知识的边界。扫码即可订阅,一起开启知识新旅程!🚀📚关注我的技术博客,探索前沿科技与实用开发技巧。一起携手走向代码的精彩世界!🚀💻 不错过每一篇精彩!

技小白的博客 1183

html百分比单位,关于CSS视窗单位百分比单位使用

这篇文章主要介绍了详解CSS视窗单位百分比单位使用,是CSS入门学习中的基础知识,需要的朋友可以参考下视窗(Viewport)单位视窗(Viewport)单位是相对单位,意味着它们没有客观的尺寸。它们的大小是由视窗(Viewport)大小决定的。下面是四个与视窗(Viewport)有关的单位。我将集中讨论前两个单位,因为它们更可能被使用。在很多情况下,视口单位(vhvw)百分比单位在它们...

weixin_35742852的博客 251

html百分比单位,详解CSS视窗单位百分比单位使用

视窗(Viewport)单位视窗(Viewport)单位是相对单位,意味着它们没有客观的尺寸。它们的大小是由视窗(Viewport)大小决定的。下面是四个与视窗(Viewport)有关的单位。我将集中讨论前两个单位,因为它们更可能被使用。在很多情况下,视口单位(vhvw)百分比单位在它们可以实现的功能方面是重叠的。然而,它们每个都有其明显的优点缺点。概括的说:当处理宽度的时候,%单位更合适。...

weixin_39902345的博客 485

CSS 单位 (详细介绍)】

1. 长度单位 1.1 相对长度 单位 1.1.1 字体的 相对长度 ⑴ em : (相对于 当前元素本身的 )字体大小 font-size 的倍数 ⑵ rem : (根元素 html 标签的) 字体大小 font-size 的倍数 ⑶ ex : x 的高度 (随 font-family , font-size 改变) ⑷ ch : 数字 0 的宽度 (随 font-family , font-size 改变) 1.1.2 视窗的 相对长度 ⑴ vh : 视窗高度 的 1% (百分之一)

Hey_Coder 2957

CSS单位之vw、vh、vmin、vmax、%

视窗(Viewport)是指浏览器内部的可视区域大小,即window.innerWidth/window.innerHeight大小,不包含任务栏标题栏以及底部工具栏的浏览器区域大小。position:absolute时,将相对于其相对的元素宽度(递归父元素直到第一个设置了position的元素)。注意:position:fixed时,无论当前元素放在哪里,将相对于窗口宽度。1vh 等于1/100的视窗高度,1vw 等于1/100的视窗宽度。下面通过一个例子来说明。下面是用一个例子来说明。

时光清浅处,一步一安然 4447

vw 前端_css3的vw单位,vh单位的讲解,以及vw vh的兼容性

vw vh的介绍vw,vh是css3中给我们提供的新的单位,他们是相对于viewport视窗的宽高进行计算的单位。说白了,就是相对于浏览器的窗口的大小。vw单位vw是相对于视窗宽度的单位,1vw=1/100浏览器宽度。vh单位vh是相对于视窗高度的单位,1vh=1/100浏览器高度。vw vh的用途。vw vh相对于浏览器的窗口的大小,代码如下:.div1{width:50vw;height:50...

weixin_39935903的博客 789

视窗单位 vs 百分比单位

视窗单位 vs 百分比单位 CSS中如何使用视窗单位 视区相关单位vw, vh..简介以及可实际应用场景 转载于:https://www.cnblogs.com/linyongqin/articles/4572016.html...

107

CSS常用单位

CSS常用单位 CSS的长度单位主要有%、px、in、cm、ch、mm、ex、pt、pc、em、rem、vw、vh、vmin、vmax,按照单位的计算方式大致可以分为绝对长度单位、相对长度单位百分比单位。 绝对长度单位 px 像素 通常而言,一个CSS像素代表屏幕设备的一个像素点,但是对于高分辨率屏幕而言一个CSS像素往往占多个设备像素,也就是说有多个屏幕像素点来表示1px,1px = 1in / 96。 <style type="text/css"> div{ hei

WindRunnerMax 1587

第一周学习笔记DAY.5

1:像素 px就是屏幕中一个个发光的小点,正常情况下,是看不到,当我们将屏幕放大,就可以看到像素是绝对单位,在pc端它是比较常用2:百分比 %相对单位,相对于其父元素的大小变化而变化,可以用作流式布局3、em相对单位,相对于当前元素的字体大小的变化而变化,当前元素没有设置字体大小,会继承其祖先元素的字体大小,最后继承根标签的字体大小根标签的默认字体大小是16px4、remr root 根rem 相对单位,相对于根标签的字体大小变化而变化。

qq_57513810的博客 1069

CSS 中px、em、rem、%、vw、vh单位之间的区别详解

CSS 中px、em、rem、%、vw、vh单位之间的区别详解

ybh756784818的博客 3810

24 个关于设备视窗口的 CSS 单位

过去CSS 有 4 个你必须知道的识别视窗口的单位,并且它们能够很好地处理每个可以想象的用例。然而,随着时间的推移时代的变化,这 4 种视口单位现在不足以解决所有用例。于是,CSS 提供了 20 个更大的视窗单位,以适应时代技术的发展需要,因此,总共为24个视窗单位,看起来感觉很多,但是,它们可能被分解为 6 个主要的视口设备,并带有 3 个精确的辅助单位,从而实现了 24 种组合。在本文中,...

web前端开发 510

css中的百分比计算方法

本文内容来源于http://www.ido321.com/1640.html  CSS支持多种单位形式,如百分比、px、pt、rem等,百分比px是常用的单位,随着移动端响应式的流行,rem、vh、vw也开始普遍使用。 今天在SegmentFault社区碰到了两个关于百分比计算的问题,一个是在translate中使用百分比的时候,是相对于哪个DOM元素的大小计算的;另外一个是在

charlene0824的博客 4265

CSS3视窗单位vw、vh、vmin、vmax说明

vw、vh做为CSS3中的新单位,已经出来挺久的了,这里也我个人也做一下详细的总结。说明vw、vh、vminvmax是CSS3中的新单位,是一种视窗单位,也是相对单位。它们的大小都是由视窗大小来决定的,单位1,代表类似于1%。具体描述如下:vw:视窗宽度的百分比 vh:视窗高度的百分比 vmin:当前较小的vwvh vmax:当前较大的vwvh视窗,指的是浏览器可视区域的宽高,也就是wi

王乐平 技术博客 1万+

LVGL core disp显示设计(lv_disp.c)

lv_disp.c当前显示页面的配置scr_act在原始的LVGL是以screen的概念存在,但我们还是习惯叫它为一个页面提供获取top_layer、sys_layer、prev_scr图层接口配置主题管理默认的主题管理是递归查找的,实际项目中因此页面的复杂性,虽然也兼容了此主题管理的方案,但还是推荐使用单页面自行管理主题的方案壁纸设置多页面切换的动画支持计算无用户操作时间清理显示缓存。

Bigan(安)的博客 2306

Vista2015使用

Vista2015使用

上一篇: CSS中的font-size属性使用教程
下一篇: CSS响应式图片运用中的srcset属性
aliyunc
博客等级 码龄7年 32粉丝 9原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值