js react antd 实现页面低分变率和高分变率下字体大小自适用,主要是配置antd

简介: 在React中结合Ant Design与媒体查询,通过less变量和响应式断点动态调整`@font-size-base`,实现多分辨率下字体自适应,提升跨设备体验。

在 React 项目中使用 Ant Design 实现不同分辨率下字体大小的自适应,可以通过配置 Ant Design 的主题变量结合媒体查询来实现。下面是具体的实现方案:

  1. 首先,你需要配置 Ant Design 的主题定制,利用 less 变量来定义基础字体大小
  2. 使用媒体查询针对不同分辨率设置不同的基础字体大小
  3. 让 Ant Design 的所有组件都基于这个基础字体大小进行缩放

以下是实现代码:

// 导入 Ant Design 样式
@import '~antd/dist/antd.less';

// 媒体查询 - 响应式字体大小
@media (max-width: 767px) {
   
  :root {
   
    --font-size-base: 12px;
  }
  @font-size-base: 12px;
  @font-size-lg: 14px;
  @font-size-sm: 10px;
}

@media (min-width: 768px) and (max-width: 1023px) {
   
  :root {
   
    --font-size-base: 14px;
  }
  @font-size-base: 14px;
  @font-size-lg: 16px;
  @font-size-sm: 12px;
}

@media (min-width: 1024px) and (max-width: 1439px) {
   
  :root {
   
    --font-size-base: 16px;
  }
  @font-size-base: 16px;
  @font-size-lg: 18px;
  @font-size-sm: 14px;
}

@media (min-width: 1440px) {
   
  :root {
   
    --font-size-base: 18px;
  }
  @font-size-base: 18px;
  @font-size-lg: 20px;
  @font-size-sm: 16px;
}

// 应用布局样式
.app-layout {
   
  min-height: 100vh;
}

.site-layout-content {
   
  min-height: 280px;
}

实现原理说明:

  1. 配置方面:

    • 使用 customize-crareact-app-rewired 来覆盖 create-react-app 的默认配置
    • 通过 addLessLoader 启用 less 支持,并配置 Ant Design 的基础主题变量
  2. 响应式实现:

    • 在 App.less 中使用媒体查询针对不同分辨率范围定义不同的 @font-size-base 变量
    • Ant Design 的所有组件都会基于 @font-size-base 计算自身的字体大小
    • 同时定义了 CSS 变量 --font-size-base 方便在自定义组件中使用
  3. 分辨率断点设置:

    • 移动设备:<768px - 较小字体
    • 平板:768px-1023px - 中等字体
    • 笔记本/小屏桌面:1024px-1439px - 标准字体
    • 大屏桌面:≥1440px - 较大字体

这种方式可以确保 Ant Design 组件和你自己的自定义组件在不同分辨率下都能保持一致的字体大小比例,提供良好的跨设备体验。

目录
相关文章
|
10月前
|
前端开发 JavaScript
除了使用Route组件,React Router还有其他方式处理404错误页面吗
除了使用Route组件,React Router还有其他方式处理404错误页面吗
283 58
|
10月前
|
前端开发
如何在React Router中定义404错误页面组件?
如何在React Router中定义404错误页面组件?
268 57
|
10月前
|
前端开发 UED
在React Router中,如何处理路由的404错误页面?
在React Router中,如何处理路由的404错误页面?
360 57
|
9月前
|
前端开发 JavaScript NoSQL
使用 Node.js、Express 和 React 构建强大的 API
本文详细介绍如何使用 Node.js、Express 和 React 构建强大且动态的 API。从开发环境搭建到集成 React 前端,再到利用 APIPost 高效测试 API,适合各水平开发者。内容涵盖 Node.js 运行时、Express 框架与 React 库的基础知识及协同工作方式,还涉及数据库连接和前后端数据交互。通过实际代码示例,助你快速上手并优化应用性能。
|
10月前
|
JavaScript 前端开发 API
纯js轻量级页面顶部Loading进度条插件
纯js轻量级页面顶部Loading进度条插件
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的客户关系管理系统附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的客户关系管理系统附带文章源码部署视频讲解等
308 2
|
JavaScript 前端开发
JavaScript中的原型 保姆级文章一文搞懂
本文详细解析了JavaScript中的原型概念,从构造函数、原型对象、`__proto__`属性、`constructor`属性到原型链,层层递进地解释了JavaScript如何通过原型实现继承机制。适合初学者深入理解JS面向对象编程的核心原理。
245 1
JavaScript中的原型 保姆级文章一文搞懂
JS+CSS3文章内容背景黑白切换源码
JS+CSS3文章内容背景黑白切换源码是一款基于JS+CSS3制作的简单网页文章文字内容背景颜色黑白切换效果。
158 0