vw和vh

vw和vh是什么?

vw/vh是一个相对单位(类似em和rem相对单位)

->  vw是:viewport width  视口宽度单位

->  vh是:viewport height  视口高度单位

相对视口的尺寸计算结果

->  1vw=1/100视口宽度

->  1vh=1/100视口高度

vw和百分比的区别是什么?

->  百分比%相对于父元素来说的

->  vw/vh 相对于当前视口来说的

### CSS 中 `vw` `vh` 单位的同时使用及其最佳实践 在网页设计中,`vw` (viewport width) `vh` (viewport height) 是基于视口尺寸的相对长度单位。这些单位使得元素大小能够响应于浏览器窗口的变化。 #### 同时使用的场景 有时为了创建更加灵活的设计布局,可能希望同时运用这两种单位。例如,在设置一个全屏背景图片或者视频容器的时候: ```css .fullscreen-element { position: fixed; top: 0; left: 0; width: 100vw; /* 使用 viewport 的宽度 */ height: 56.25vh; /* 对应常见的 16:9 屏幕比例的高度 */ } ``` 上述代码片段展示了如何通过指定宽高分别为视窗宽度高度的不同百分比来保持特定的比例[^1]。 #### 应用中的注意事项 - **移动设备上的滚动条影响**:由于某些平台(特别是桌面操作系统)会在页面有垂直滚动条的情况下减少可用视区宽度,这可能导致实际显示效果与预期不符。因此建议考虑加入额外样式调整以适应不同环境下的表现差异。 - **最小/最大限制**:为了避免极端情况下元素变得过大或过小,可以通过 min-width, max-width, min-height 及 max-height 来设定界限值。 ```css .responsive-container { padding: 2rem; background-color: lightblue; --base-font-size: clamp(1rem, 2vmin, 2rem); font-size: var(--base-font-size); margin-bottom: calc(2 * var(--base-font-size)); } @media only screen and (max-aspect-ratio: 1/1){ .responsive-container{ flex-direction: column; } } ``` 这段示例不仅混合了 `vw`, `vh` 还引入了其他类型的相对单位如 `vmin` 并结合媒体查询实现自适应布局[^2]。 #### 最佳实践总结 - 始终考虑到跨浏览器兼容性问题; - 测试各种屏幕分辨率下组件的行为; - 利用现代CSS特性比如 `clamp()` 函数提供更好的灵活性; - 结合媒体查询优化复杂布局的表现形式;
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值