Bulma 是一个高度可自定义的 CSS 框架。从颜色到版式、间距和尺寸、表单和布局,Bulma 的所有部分都可以由用户自定义。
Bulma 的样式和变量在多个级别定义
- 全局 Sass 变量
- 组件 Sass 变量
- 全局 CSS 变量
- 组件 CSS 变量
- 帮助器类
所有 Bulma 组件都使用Sass 变量和CSS 变量(也称为 CSS 自定义属性)进行样式化。详细了解它们
Bulma 自定义概念
让 Bulma 可自定义的原因
Bulma 是一个高度可自定义的 CSS 框架。从颜色到版式、间距和尺寸、表单和布局,Bulma 的所有部分都可以由用户自定义。
Bulma 的样式和变量在多个级别定义
所有 Bulma 组件都使用Sass 变量和CSS 变量(也称为 CSS 自定义属性)进行样式化。详细了解它们
Bulma 使用全局 Sass 变量,定义在 utilities
文件夹中的 2 个文件中
initial-variables.scss
,您可以在其中按字面值定义变量
$blue: hsl(229, 53%, 53%)
$size-1: 3rem
$block-spacing: 1.5rem
$tablet: 769px
$easing: ease-out
或 $radius-large: 0.75rem
derived-variables.scss
,其中变量根据前一个文件中设置的值计算得出
$primary
$link
$success
$info
$warning
$dark
$background
$border
$code
和 $pre
$shadow-color
$family-primary
$family-secondary
$family-code
$size-small
$size-normal
$size-medium
$size-large
$colors
$shades
$sizes
所有 Bulma 组件都定义了自己的 Sass 变量。例如,components/breadcrumb.scss
定义了以下内容
Sass 变量
|
值
|
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
Bulma 使用在 :root
级别定义的全局 CSS 变量。它们都以 bulma-
为前缀
:root {
/* Colors and Lightness values */
--bulma-scheme-h: 221;
--bulma-scheme-s: 14%;
--bulma-light-l: 90%;
--bulma-light-invert-l: 20%;
--bulma-dark-l: 20%;
--bulma-dark-invert-l: 90%;
--bulma-soft-l: 90%;
--bulma-bold-l: 20%;
--bulma-soft-invert-l: 20%;
--bulma-bold-invert-l: 90%;
/* etc. */
/* Color Palettes */
--bulma-primary: hsla(var(--bulma-primary-h), var(--bulma-primary-s), var(--bulma-primary-l), 1);
--bulma-primary-base: hsla(var(--bulma-primary-h), var(--bulma-primary-s), var(--bulma-primary-l), 1);
--bulma-primary-rgb: 0, 209, 178;
--bulma-primary-h: 171deg;
--bulma-primary-s: 100%;
--bulma-primary-l: 41%;
--bulma-primary-00-l: 1%;
--bulma-primary-05-l: 6%;
--bulma-primary-10-l: 11%;
--bulma-primary-15-l: 16%;
--bulma-primary-20-l: 21%;
/* etc. */
/* Typography */
--bulma-family-primary: Inter, SF Pro, Segoe UI, Roboto, Oxygen, Ubuntu, Helvetica Neue, Helvetica, Arial, sans-serif;
--bulma-family-secondary: Inter, SF Pro, Segoe UI, Roboto, Oxygen, Ubuntu, Helvetica Neue, Helvetica, Arial, sans-serif;
--bulma-family-code: Inconsolata, Hack, SF Mono, Roboto Mono, Source Code Pro, Ubuntu Mono, monospace;
--bulma-size-small: 0.75rem;
--bulma-size-normal: 1rem;
--bulma-size-medium: 1.25rem;
--bulma-size-large: 1.5rem;
/* etc. */
}
您可以通过在同一作用域(甚至更具体的范围)设置新值来覆盖它们
:root {
/* Set new values */
--bulma-scheme-h: 35;
--bulma-scheme-s: 20%;
}
Bulma 也在组件级别进行样式设置。例如,以下是 .title
元素的样式设置方式
.title {
--bulma-title-color: var(--bulma-text-strong);
--bulma-title-family: false;
--bulma-title-size: var(--bulma-size-3);
--bulma-title-weight: var(--bulma-weight-extrabold);
--bulma-title-line-height: 1.125;
--bulma-title-strong-color: inherit;
--bulma-title-strong-weight: inherit;
--bulma-title-sub-size: 0.75em;
--bulma-title-sup-size: 0.75em;
}
.title {
color: var(--bulma-title-color);
font-size: var(--bulma-title-size);
font-weight: var(--bulma-title-weight);
line-height: var(--bulma-title-line-height);
}
您可以通过在同一作用域下设置新值来覆盖此内容
.title {
--bulma-title-color: #fff;
--bulma-title-line-height: 1.6;
}