rpx和px混用方案

(1)创建一个全局的样式配置文件:

css 复制代码
// styles/variables.scss
:root {
  // 基础字体大小
  --font-size-xs: 12px;
  --font-size-sm: 14px;
  --font-size-md: 16px;
  --font-size-lg: 18px;
  
  // 响应式间距
  --spacing-xs: 5px;
  --spacing-sm: 10px;
  --spacing-md: 15px;
  --spacing-lg: 20px;
}

// 在小屏设备上使用rpx
@media screen and (max-width: 768px) {
  :root {
    --font-size-xs: 24rpx;
    --font-size-sm: 28rpx;
    --font-size-md: 32rpx;
    --font-size-lg: 36rpx;
    
    --spacing-xs: 10rpx;
    --spacing-sm: 20rpx;
    --spacing-md: 30rpx;
    --spacing-lg: 40rpx;
  }
}

(2)使用

css 复制代码
<template>
  <view class="container">
    <text class="title">标题</text>
    <text class="content">内容</text>
  </view>
</template>

<style scoped>
.title {
  font-size: var(--font-size-lg);
  margin-bottom: var(--spacing-md);
}

.content {
  font-size: var(--font-size-md);
}
</style>

(3)方案优点

i. 提供了统一的样式管理

ii. 易于维护和修改

iii. 可以根据不同设备自动适配

iv. 保持了代码的清晰和可读性

(4)注意事项

i. 在项目入口文件引入全局样式配置

ii. 根据实际设计规范调整具体的尺寸值

iii. 可以根据需要添加更多的断点和变量

iv. 考虑添加更多的设备类型判断(如平板、桌面等)

(5)为什么在小设备上使用rpx,在宽设备上使用px?

这是因为 rpx 和 px 在不同设备上的表现特点不同:

i. rpx 的特点: rpx 是微信小程序引入的响应式单位, 规则是屏幕宽度/750,即以&nbsp;750rpx为基准,在小屏手机上表现良好,因为大多数手机的设计稿都是以750px 为基准,但在大屏设备上会等比放大,导致内容过大。

ii. px的特点:

px是固定单位,不会随屏幕变化,在大屏设备上能保持合适的尺寸,但在小屏设备上可能显示过小

相关推荐
暮雨哀尘3 小时前
微信小程序开发:开发实践
开发语言·算法·微信小程序·小程序·notepad++·性能·技术选型
arbboter2 天前
【AI插件开发】Notepad++ AI插件开发实践:从Dock窗口集成到功能菜单实现
人工智能·notepad++·动态菜单·notepad++插件开发·dock窗口集成·ai代码辅助工具·ai对话窗口
web_Hsir2 天前
uniapp 微信小程序项目中 地图 map组件 滑动面板
微信小程序·uni-app·notepad++
森叶4 天前
Git Bash 设置Notepad++作为默认编辑器
git·编辑器·notepad++
暮雨哀尘5 天前
微信小程序开发:微信小程序组件应用研究
算法·微信·微信小程序·小程序·notepad++·微信公众平台·组件
BabyFish135 天前
notepad++ 正则表达式
正则表达式·notepad++
arbboter5 天前
【Ai插件开发】Notepad++ AI插件开发进阶:集成Ai模型问答功能与流式交互实现
人工智能·notepad++·notepad++插件开发·ai模型集成·流式响应处理·scintilla控件交互·winhttp封装应用
arbboter6 天前
【AI工具开发】Notepad++插件开发实践:从基础交互到ScintillaCall集成
人工智能·编辑器·notepad++·插件开发·scintilla·scintillacall·scintilla类封装
summer__77776 天前
notepad++代码查看器分享
notepad++
strggle_bin7 天前
Notepad++ 替换 换行符 为 逗号
notepad++