Files
cattleTransportation/.cursor/rules/languages/wxss.mdc

80 lines
2.4 KiB
Plaintext
Raw Normal View History

2025-11-04 09:38:19 +08:00
---
description: 微信小程序 WXSS 编写规范
globs: **/*.wxss
alwaysApply: false
---
# WXSS 编写规范
## 基本语法规范
- 使用 2 个空格进行缩进
- 选择器和属性名使用小写字母
- 属性值后必须加分号
- 颜色值使用小写字母,优先使用简写形式
- 0 值不需要单位,如 `margin: 0` 而非 `margin: 0px`
## 选择器规范
- 类名使用 kebab-case 格式,如 `.user-info`
- 避免使用 ID 选择器,优先使用类选择器
- 避免过深的选择器嵌套(不超过 3 层)
- 使用有意义的类名,体现元素的功能而非样式
## 布局规范
- 优先使用 Flexbox 进行布局
- 使用 `rpx` 单位进行响应式设计
- 合理使用 `box-sizing: border-box`
- 避免使用绝对定位,除非必要
## 尺寸单位
- 字体大小使用 `rpx`,参考设计稿 750px 宽度
- 边距和内边距使用 `rpx`
- 边框宽度使用 `px`(通常为 1px
- 百分比用于相对布局
## 颜色和主题
- 使用 TDesign 提供的 CSS 变量
- 自定义颜色应定义为 CSS 变量
- 避免硬编码颜色值
- 支持深色模式时使用主题变量
## 字体规范
- 使用系统默认字体栈
- 字体大小遵循设计规范常用尺寸24rpx、28rpx、32rpx、36rpx
- 行高设置为字体大小的 1.4-1.6 倍
- 合理使用字重,避免过度使用粗体
## 组件样式
- 组件样式应当封装完整,避免依赖外部样式
- 使用 `externalClasses` 允许外部定制样式
- 避免样式污染,使用适当的选择器作用域
- 组件内部样式使用相对单位
## 动画和过渡
- 使用 CSS 过渡而非 JavaScript 动画
- 动画时长控制在 200-300ms
- 使用 `ease-out` 缓动函数
- 避免同时动画过多属性
## 响应式设计
- 使用 `rpx` 实现基本的响应式
- 考虑不同屏幕尺寸的适配
- 使用媒体查询处理特殊情况
- 测试在不同设备上的显示效果
## 性能优化
- 避免使用复杂的选择器
- 减少重绘和重排的样式属性
- 合理使用 `transform` 和 `opacity` 进行动画
- 避免使用 `!important`
## 代码组织
- 样式按功能模块组织
- 使用注释分隔不同的样式区块
- 公共样式提取到全局样式文件
- 保持样式文件的简洁和可读性
## TDesign 集成
- 优先使用 TDesign 提供的样式类
- 通过 CSS 变量定制主题
- 遵循 TDesign 的设计规范
- 避免覆盖组件库的核心样式