WordPress 的 Base SCSS 工具和变量。
注意:此软件包需要 Dart Sass 进行编译。使用此软件包时,请确保您使用的是基于 Dart Sass 的 Sass 1.23.0 或更高版本。
安装
安装模块
npm install @wordpress/base-styles --save-dev
用法
在应用程序的 SCSS 文件中,按如下方式包含样式:
@use '@wordpress/base-styles/colors';
@use '@wordpress/base-styles/variables';
@use '@wordpress/base-styles/mixins';
@use '@wordpress/base-styles/breakpoints';
@use '@wordpress/base-styles/animations';
@use '@wordpress/base-styles/z-index';
@use '@wordpress/base-styles/default-custom-properties';
在访问工具、变量、函数等时,请务必使用命名空间。例如:
.selector {
color: colors.$gray-300;
@include mixins.break-medium() {
font-size: variables.$font-size-large;
}
}
CSS Admin Themes
该软件包还包含了由 wordpress-admin-schemes() mixin 生成的输出的构建版本,可直接在项目中使用。CSS 文件位于 node_modules/@wordpress/base-styles/build-style/admin-schemes.css。
Tokens
以下变量是 @wordpress/components 和编辑器用于提升(elevation)和边框半径(border radius)的 SCSS tokens。新的 UI 应改用来自 @wordpress/theme 的 CSS 设计 tokens;这些保留是为了兼容现有的 SCSS。
Elevation tokens
每个值都旨在用作 box-shadow。
| Variable | Value |
|---|---|
$elevation-x-small | 0 1px 1px rgba(0, 0, 0, 0.03), 0 1px 2px rgba(0, 0, 0, 0.02), 0 3px 3px rgba(0, 0, 0, 0.02), 0 4px 4px rgba(0, 0, 0, 0.01) |
$elevation-small | 0 1px 2px rgba(0, 0, 0, 0.05), 0 2px 3px rgba(0, 0, 0, 0.04), 0 6px 6px rgba(0, 0, 0, 0.03), 0 8px 8px rgba(0, 0, 0, 0.02) |
$elevation-medium | 0 2px 3px rgba(0, 0, 0, 0.05), 0 4px 5px rgba(0, 0, 0, 0.04), 0 12px 12px rgba(0, 0, 0, 0.03), 0 16px 16px rgba(0, 0, 0, 0.02) |
$elevation-large | 0 5px 15px rgba(0, 0, 0, 0.08), 0 15px 27px rgba(0, 0, 0, 0.07), 0 30px 36px rgba(0, 0, 0, 0.04), 0 50px 43px rgba(0, 0, 0, 0.02) |
@use '@wordpress/base-styles/variables';
.card {
box-shadow: variables.$elevation-small;
}
Radius tokens
每个值都旨在用作 border-radius。
| Variable | Value | Applied to |
|---|---|---|
$radius-x-small | 1px | 嵌套在输入等原始元素中的按钮等元素。 |
$radius-small | 2px | 大多数原始元素。 |
$radius-medium | 4px | 具有较小内边距的容器,例如菜单和弹出框。 |
$radius-large | 8px | 具有较大内边距的容器,例如卡片和模态框。 |
$radius-full | 9999px | 药丸形按钮。 |
$radius-round | 50% | 圆形和椭圆形。 |
@use '@wordpress/base-styles/variables';
.pill {
border-radius: variables.$radius-full;
}
为此软件包做贡献
这是 Gutenberg 项目的一部分独立软件包。该项目组织为 monorepo。它由多个自包含的软件包组成,每个软件包都有特定的用途。此 monorepo 中的软件包发布到 npm,并被 WordPress 以及其他软件项目使用。
要了解有关为此软件包或整个 Gutenberg 做出贡献的更多信息,请阅读项目的主要 贡献者指南。