View on GitHub
CSS 變數 (CSS variables)
使用 Bootstrap 的 CSS 自定義屬性,以進行更快速且更具前瞻性的設計與開發。
On this page
Bootstrap 在其已編譯的 CSS 中包含大約二十多種 CSS 自定義屬性 (變數) ,以及十多種正改進自定義的元件。當您在瀏覽器中的檢查工具、code sandbox、或通用原型中使用這些工具,可以輕鬆查看訪問值,像是我們的主題色彩、斷點、以及主要字體。
我們所有的自定義屬性都以 bs-
為前綴 以避免與第三方 CSS 發生衝突。
Root variables
這是我們包含的變數(請注意 :root
是必須的),可以加載在任何有載入 Bootstrap CSS 的地方。他們位於我們的 _root.scss
資料夾且包含在我們以編譯的 dist 文件中。
:root {
--bs-blue: #0d6efd;
--bs-indigo: #6610f2;
--bs-purple: #6f42c1;
--bs-pink: #d63384;
--bs-red: #dc3545;
--bs-orange: #fd7e14;
--bs-yellow: #ffc107;
--bs-green: #198754;
--bs-teal: #20c997;
--bs-cyan: #0dcaf0;
--bs-white: #fff;
--bs-gray: #6c757d;
--bs-gray-dark: #343a40;
--bs-primary: #0d6efd;
--bs-secondary: #6c757d;
--bs-success: #198754;
--bs-info: #0dcaf0;
--bs-warning: #ffc107;
--bs-danger: #dc3545;
--bs-light: #f8f9fa;
--bs-dark: #212529;
--bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
--bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
--bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
}
元件變數
我們也開始將自定義屬性用來當做各元件的局部變數。如此一來我們可以減少編譯後的 CSS,確保樣式不會在巢狀表格之類的地方繼承,並在 Sass 編譯後允許 Bootstrap 元件進行一些基本的重新樣式化和擴展。
請看我們的表格文件,以 了解我們如何使用 CSS 變數.
我們也在網格中使用 CSS 變數(主要用於 gutters 上),而將來還會有更多的元件使用。
範例
CSS 變數提供了與 Sass 變數相似的靈活性,但無需先進行編譯其可供瀏覽器運作。舉例來說,在這裡我們使用 CSS 變數重置頁面的字體和連結樣式。
body {
font: 1rem/1.5 var(--bs-font-sans-serif);
}
a {
color: var(--bs-blue);
}