问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

揭秘前端大屏项目:如何精准将设计稿转化为适配全屏幕的完美页面

创作时间:
作者:
@小白创作中心

揭秘前端大屏项目:如何精准将设计稿转化为适配全屏幕的完美页面

引用
CSDN
1.
https://blog.csdn.net/qq_36384657/article/details/145975589

在前端开发中,大屏项目因其独特的展示需求和复杂的适配要求而颇具挑战。本文将分享如何将设计稿精准转化为适配全屏幕的完美页面,重点介绍视口单位、rem、vw/vh的应用,以及如何保持元素比例和布局。

拿到设计稿如何分析

仔细查看设计稿,理解整体布局、色彩搭配、元素位置和交互效果等。明确各个区域的功能和数据展示方式,确定页面的主要模块和次要模块。分析设计稿中的字体样式、图标使用、按钮尺寸和状态等细节,以便在开发中准确还原。

首先就是划区域,将设计稿按照区域拆分成不同的功能模块,每个模块就是一个独立的组件。其次,分析布局,一般大屏项目都是左右两个区域显示图表,中间区域显示大块的内容。因此左右两侧是有宽高的,中间一般自适应宽度。每个模块(下面说的盒子)的宽高是灵活的比例值,盒子内部的可以根据flex或grid等进行自适应。

将盒子比例调整好了,后面开发每个独立的功能就容易了。按照盒子进行组件开发。

如何定义盒子的宽高

这里盒子我指的是设计稿中某一矩形区域,对应下方的绿色框框。通常大屏项目里的某一图表区域。

一般我们拿到设计稿,设计稿的尺寸是固定的,比如是19201080或者一些UI设计师习惯的其他尺寸,比如这次的设计稿是21041196,非正常显示分辨率的尺寸。那对于前端开发来说不能根据设计稿的px像素单位直接写死,通常使用的是参考设计稿矩形区域的宽高进行等比例还原。使用vw或vh进行矩形盒子的宽高。但是如果宽度以设计稿转换的vw,高度以设计稿转换的vh进行,在前端不同分辨率的显示器中,原始盒子的比例就无法保证。

保证原始盒模型的比例

因此,如果在保证原始盒子的比例时,建议使用min(vh,vw)进行,一般来说,屏幕适配最小值是高度,显示器通常宽比高大一些。使用高度vh,宽度也不会超出屏幕范围。

换句话说就是将盒子在设计稿中区域的高度占比,转换为实际的高度占比,盒子的宽度,使用vh进行等比例设置。这样盒子就可以自适应页面,并且不会超出屏幕区域

如何设置定位元素的边距值

在大屏项目里,图表区域通常是绝对定位在页面上的,前面分析了如何定义盒子的宽高,这里同理设置边距值。这里依然使用vh进行边距的定位

标题和正文字体分辨率适配

使用相对单位(如 em、rem)来设置字体大小,使字体能够根据父元素或根元素的大小自适应。可以根据屏幕宽度,通过媒体查询调整字体大小,以保证在不同屏幕上都有良好的可读性。

根元素字体适配

/* 默认字体大小,适用于较小屏幕或未匹配到媒体查询的情况 */
html {
    font-size: 14px;
}
@media (max-width: 1000px) {
    html {
        font-size: 12px;
    }
}
@media (min-width: 1200px) {
    html {
        font-size: 16px;
    }
}
@media (min-width: 1400px) {
    html {
        font-size: 20px;
    }
}
@media (min-width: 1980px) {
    html {
        font-size: 24px;
    }
}

标题字体适配

之前在适配的时候我是监听屏幕分辨率,不同分辨率调整字体。这种方法很笨拙,如何高效调整页面所有字体?答案就是使用rem根字体比例值。所有字体参考根元素的字体进行等比例设置。只有监听一次屏幕适配的媒体查询设置根字体的大小。

通常来说,页面字体是14px或16px,像标题这样的字体18px-32px-42px都有。以正文字体14px、一级标题28px为例子,如果大屏适配需要16px就统一调整正文字体16px,标题16/14*28=32px。那么一级标题就是2rem,正文字体不用设置,其余标题参考比例进行设置相应的rem值

.title {
    font-size: 2rem;
}

正文字体适配

像一些小标题,可以使用em参考父元素的字体大小进行设置。但通常来说,rem就够用了。以一个作为参考标准就行了。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号