Bootstrap 5 配色必须通过 Sass 变量重写实现需在入口 SCSS 中于导入 Bootstrap 前重定义 $primary 等基础色、$theme-colors map 及衍生变量如 $primary-rgb并用 map-merge 安全扩展颜色CSS 变量仅局部生效无法替代编译时定制。Bootstrap 5 的配色定制不靠配置文件靠 Sass 变量重写Bootstrap 5 官方没有提供类似 bootstrap.config.json 或 YAML 配置文件来定义主题色——它压根不读这类运行时配置。所有颜色体系由 Sass 变量驱动必须在编译前修改源变量值再重新构建 CSS。常见错误是试图在 HTML 中引入一个“配色配置 JS 文件”或以为改 data-bs-theme 就能批量换主色其实那只是浅层的深色模式开关和自定义 palette 无关。真正生效的位置你的项目中 _custom.scss或入口 main.scss里在 import bootstrap/scss/functions 之后、import bootstrap/scss/bootstrap 之前重定义变量必须重写的变量包括$primary、$secondary、$success 等基础色以及 $theme-colors 这个 map用于扩展如 indigo、teal 等额外色别漏掉衍生变量$primary-rgb、$primary-text-emphasis、$primary-bg-subtle —— Bootstrap 5.3 大量依赖这些生成文本/背景对比色不一并更新会导致按钮文字看不清、alert 背景发灰等隐性问题如何安全扩展 $theme-colors 而不破坏原有工具类直接覆盖 $theme-colors 整个 map 会丢掉 Bootstrap 默认的 6 种颜色primary → light正确做法是用 Sass 的 map-merge() 增量添加$theme-colors: map-merge( $theme-colors, ( indigo: #4b0082, amber: #ffc107, cyan: #00bcd4 ));这样编译后你就能用 text-indigo、bg-amber、btn-cyan 等类名且原有 btn-primary、text-success 全部保留。 arXiv Xplorer ArXiv 语义搜索引擎帮您快速轻松的查找保存和下载arXiv文章。