vue + vite 项目架构笔记---- PC端屏幕自适应方案

背景:

项目中总有很多界面 需要做大小屏幕适配的兼容,那么怎么能够快速实现这一方案呢,SASS的出现是个非常好用的工具,可以通过自定义函数,来实现自动计算。

方案:vue3 + vite + sass

具体实现细节:

  1. 创建utils.scss 文件,我的项目中路径 为: src\styles\utils.scss;
  2. 配置vite.config.js ,实现utils.scss的全局注册
  3. 就可以在每个vue文件中快乐的使用了

具体代码: 

1. utils.scss文件如下:

//使用scss的math函数,https://sass-lang.com/documentation/breaking-changes/slash-div@use "sass:math";//默认设计稿的宽度
$designWidth :1920;
//默认设计稿的高度
$designHeight: 1080;//px转为vw的函数@function vw($px) {@return math.div($px, $designWidth) * 100vw;
}//px转为vh的函数@function vh($px) {@return math.div($px, $designHeight) * 100vh;
}

2. vite.config.js 文件如下:

export default defineConfig({```css: {preprocessorOptions: {scss: {additionalData: `@import "@/styles/utils.scss";`}}},```})

3. vue中的使用方式: 直接使用vw设置宽度,vh设置高度即可,不需要添加px,直接写数值!!!

         img {width: vw(130);height: vh(64);}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/788920.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

开发环境搭建及驱动移植 2

1 开发环境搭建 前言: STD库-标准外设库 寄存器操作,将一些基本的寄存器操作封装成函数 HAL库-硬件抽象库将这些抽象成了一个抽象层,从使用的角度来看,是与硬件无关的 HAL库优势HAL库是ST未来主推的库,从2015开始ST…

探索Django:打造高效、可扩展的Web应用(终)

10. Django的静态文件管理与部署 配置静态文件路径收集静态文件部署Django应用 在Django应用程序中,静态文件(例如CSS、JavaScript、图像等)的管理和部署是非常重要的,它们用于美化网页样式、增强用户交互体验等。本节将详细介绍…

STM32重要参考资料

stm32f103c8t6 一、引脚定义图 二、时钟树 三、系统结构图 四、启动配置 (有时候不小心短接VCC和GND,芯片会锁住,可以BOOT0拉高试试(用跳线帽接)) 五、最小系统原理图 可用于PCB设计

C++类 单例模式

例子 请看如下的类和调用: 在您提供的代码片段中,CPathPlanMan 类使用了一个单例模式,这意味着这个类只需要一个实例,并且提供了全局访问点来获取这个实例。这通常用于控制对一个类实例的访问,尤其是在创建实例代价昂…

BetterZip for Mac2024最新mac解压缩软件

作为一名软件专家,对于市面上各类软件都有较为深入的了解,下面介绍的是一款适用于Mac系统的解压缩软件——BetterZip,将从其功能特点、使用方法、用户体验及适用人群等方面进行详细介绍。 BetterZip5-安装包绿色版下载如下: htt…

AWS相关服务说明

互联网网关 官网 # 官网 https://docs.aws.amazon.com/zh_cn/vpc/latest/userguide/VPC_Internet_Gateway.htmlInternet 网关是一种横向扩展、冗余且高度可用的 VPC 组件,支持在 VPC 和 Internet 之间进行通信。它支持 IPv4 和 IPv6 流量。它不会对您的网络流量造…

某音乐平台歌曲信息逆向之参数寻找

如何逆向加密参数:某音乐平台歌曲信息逆向之webpack扣取-CSDN博客 参数构建 {"comm": {"cv": 4747474,"ct": 24,"format": "json","inCharset": "utf-8","outCharset": "ut…

XML与Xpath

XML与Xpath XML是一种具有某种层次结构的文件,Xpath则是解析这种文件的工具 接下来将会解释XML文件的结构和Xpath的基本使用,并且用Java语言进行操作展示。 XML结构 XML(可扩展标记语言)文件具有一种层次结构,由标签…

c++11 标准模板(STL)本地化库 - 平面类别 - (std::ctype) 定义字符分类表(二)

本地化库 本地环境设施包含字符分类和字符串校对、数值、货币及日期/时间格式化和分析&#xff0c;以及消息取得的国际化支持。本地环境设置控制流 I/O 、正则表达式库和 C 标准库的其他组件的行为。 平面类别 定义字符分类表 std::ctype template< class CharT > clas…

Maven是什么? Maven的概念+作用

1.Maven的概念 Maven中文意思为“专家“、”内行“的意思&#xff0c;它是一个项目管理工具&#xff0c;可以对Java项目进行构建、依赖管理&#xff0c;通俗点 就是通过pom.xml文件的配置获取jar包不用手动的去添加jar包。 2.Maven的作用 对于大的工程&#xff0c;需要引用各…

jaihouse介绍

本文来自jaihouse在github上的仓库readme第一段。 https://github.com/siemens/jailhouse?tabreadme-ov-file 原文&#xff1a; Introduction Jailhouse is a partitioning Hypervisor based on Linux. It is able to run bare-metal applications or (adapted) operating …

morkdown语法转微信公众号排版(免费)

morkdown语法转微信公众号排版&#xff08;免费&#xff09; 源码来自githab&#xff0c;有些简单的问题我都修复了。大家可以直接去找原作者的源码&#xff0c;如果githab打不开就从我下载的网盘里下载吧。 效果

5分钟安装docker和docker compose环境

5分钟安装docker和docker compose环境 5分钟安装docker和docker compose环境环境介绍卸载docker环境安装docker安装docker compose 5分钟安装docker和docker compose环境 你好&#xff01; 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑…

第21章 责任区域

< 回到目录 第21章 责任区域 “三个和尚没水吃” 。当某个行为或流程由多人负责时&#xff0c;通常该行为很难保质保量&#xff0c;甚至很难完成。 为了避免这种情况发生&#xff0c;需要将任务分门别类&#xff0c;将每个类别分配给一个人&#xff0c;注意&#xff0c;只…

IP代理池赋能Python网络爬虫

文章目录 什么是IP代理池代理服务器IP代理池的作用IP代理池的构建IP代理池的管理 相关案例IP代理在爬虫中的运用IP代理在数据收集中的运用IP代理在反爬虫中的运用 结语 什么是IP代理池 IP代理池是一个存储了多个可用代理IP地址的资源池&#xff0c;用于在网络爬虫、数据采集、…

C#属性显示

功能&#xff1a; 显示对象的属性&#xff0c;包括可显示属性、可编辑属性、及不可编辑属性。 1、MainWindow.xaml <Window x:Class"FlowChart.MainWindow"xmlns"http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x"http://sche…

Java中的数组及其使用

目录 数组的基本概念 声明数组 创建数组 初始化数组 访问数组元素 数组的遍历 使用for循环 使用for-each循环 多维数组 数组的局限性和替代品 总结 在Java中&#xff0c;数组是存储固定大小的同类型元素的容器。这意味着你可以用一个单一的变量名存储多个项目的集合…

C++(11): 智能指针shared_ptr

1. 概述 shared_ptr智能指针&#xff0c;本质是“离开作用域会自动调整(减小)引用计数&#xff0c;如果引用计数为0&#xff0c;则会调用析构函数”。这样一来&#xff0c;就进化成类似于int、float等的一种会被自动释放的类型。 2. 初始化智能指针 初始化一个智能指针的方式比…

多态的练习

练习1&#xff1a;笔试&面试 题目1&#xff1a;继承成员变量和继承方法的区别 class Base { int count 10; public void display() { System.out.println(this.count); } } class Sub extends Base { int count 20; public void display() …

深入理解ThreadLocal原理

目录 1- 什么是ThreadLocal &#xff1f;2- ThreadLocal的作用&#xff1f;ThreadLocal实现线程间资源隔离ThreadLocal实现线程内资源共享 3- ThreadLocal 原理3-1 ThreadLocalMap3-2 ThreadLocalMap的扩容&#x1f511;1. 为什么会发生扩容&#xff1f;&#x1f511;2. Thread…