为什么 哔哩哔哩 移动端适配 用vmin vmax 而不用 vh vw 了

825 阅读2分钟

直接上图

image.png

B站移动端的单位变了,不再是以前的vh vw了,取而代之的是用了vmin。

那么为什么这么做,是为了照顾什么情况而改的呢?

接下来说一下。


其实bilibili这么做是为了照顾手机端横屏和竖屏的显示效果。

vh vm

vh vm 跟视口的高度和宽度有关,1vw 就是视口的宽度的 1%

vmin vmax

vmin vmax 跟当前的屏幕的宽度和高度的最大值或最小值有关,取决于哪个更大和更小。

vmin: 当前vw和vh中较小的一个值(即相对于视窗中较短的一边)
vmax: 当前vw和vh中较大的一个值(即相对于视窗中较长的一边)

之前b站vh vw这种写法,竖屏下是没有问题的,但是到了横屏下,头部占了将近3分之1,视频内容占了很窄位置,内容看起来很少,而且有一部分会被最底部的打开APP按钮遮挡住。体验感觉并不理想。

image.png

所以说,为了照顾横屏的问题,就把所有的 vh vw 全部调整成了 vmin vmax 。

用vmin vmax这种写法的效果内容和头部和底部按钮比例就好很多,展示的内容更多,体验更好:

image.png

如何更改呢?

就是直接全局搜索vw全部改成vmin, 就可以了。

vmin vmax 的 应用场景

多用于移动端,做移动端页面时,如果使用vw、wh设置字体大小(比如5vw),在竖屏和横屏状态下显示的字体大小是不一样的。这里就可以用vmin和vmax。使得文字大小在横屏竖屏下保持一致。

兼容性

image.png

绿: 可
红: 不可

开启掘金成长之旅!这是我参与「掘金日新计划 · 2 月更文挑战」的第 6 天 点击查看活动详情