@mixin text-ellipsis { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } // 响应式布局工具类 @mixin mobile { @media screen and (max-width: 768px) { @content; } } @mixin tablet { @media screen and (min-width: 769px) and (max-width: 1024px) { @content; } } @mixin desktop { @media screen and (min-width: 1025px) { @content; } } // 通用样式变量 :root { // 字体大小 - 整体缩小约25% --font-size-xs: 20px; // 原24px --font-size-sm: 22px; // 原26px --font-size-base: 24px; // 原28px --font-size-lg: 28px; // 原32px --font-size-xl: 32px; // 原36px // 间距 - 也相应缩小 --spacing-xs: 6px; // 原8px --spacing-sm: 10px; // 原12px --spacing-base: 14px; // 原16px --spacing-lg: 20px; // 原24px --spacing-xl: 28px; // 原32px // 圆角 - 适当调整 --border-radius-sm: 6px; // 原8px --border-radius-base: 10px; // 原12px --border-radius-lg: 14px; // 原16px --border-radius-xl: 20px; // 原24px // 移动端特殊变量 @include mobile { --font-size-base: 14px; --spacing-base: 12px; } } // 移动端适配 @media screen and (max-width: 768px) { :root { // 间距 --spacing-xs: 3px; --spacing-sm: 5px; --spacing-base: 7px; --spacing-lg: 10px; --spacing-xl: 14px; // 字体大小 --font-size-xs: 10px; --font-size-sm: 11px; --font-size-base: 12px; --font-size-lg: 14px; --font-size-xl: 16px; // 圆角 --border-radius-sm: 3px; --border-radius-base: 5px; --border-radius-lg: 7px; } }