Saltar al contenido principal Saltar a la navegación de documentos

Bootstrap está respaldado por un extenso sistema de colores que tematiza nuestros estilos y componentes. Esto permite una personalización y extensión más completas para cualquier proyecto.

colores del tema

Usamos un subconjunto de todos los colores para crear una paleta de colores más pequeña para generar esquemas de color, también disponible como variables de Sass y un mapa de Sass en el scss/_variables.scssarchivo de Bootstrap.

Primario
Secundario
Éxito
Peligro
Advertencia
Información
Luz
Oscuro

Todos estos colores están disponibles como mapa Sass, $theme-colors.

$theme-colors: (
  "primary":    $primary,
  "secondary":  $secondary,
  "success":    $success,
  "info":       $info,
  "warning":    $warning,
  "danger":     $danger,
  "light":      $light,
  "dark":       $dark
);

Consulte nuestros documentos de mapas y bucles de Sass para saber cómo modificar estos colores.

Todos los colores

Todos los colores de Bootstrap están disponibles como variables de Sass y un mapa de Sass en scss/_variables.scssel archivo. Para evitar aumentar el tamaño de los archivos, no creamos clases de color de texto o de fondo para cada una de estas variables. En su lugar, elegimos un subconjunto de estos colores para una paleta temática .

Asegúrese de controlar las relaciones de contraste a medida que personaliza los colores. Como se muestra a continuación, hemos agregado tres proporciones de contraste a cada uno de los colores principales: una para los colores actuales de la muestra, una contra el blanco y otra contra el negro.

$ azul#0d6efd
$azul-100
$azul-200
$azul-300
$azul-400
$azul-500
$azul-600
$azul-700
$azul-800
$azul-900
$índigo#6610f2
$índigo-100
$índigo-200
$índigo-300
$índigo-400
$índigo-500
$índigo-600
$índigo-700
$índigo-800
$índigo-900
$morado#6f42c1
$ púrpura-100
$ púrpura-200
$ púrpura-300
$ púrpura-400
$ púrpura-500
$ púrpura-600
$ púrpura-700
$ púrpura-800
$ púrpura-900
$rosa#d63384
$rosa-100
$rosa-200
$rosa-300
$rosa-400
$rosa-500
$rosa-600
$rosa-700
$rosa-800
$rosa-900
$rojo#dc3545
$ rojo-100
$rojo-200
$rojo-300
$rojo-400
$rojo-500
$rojo-600
$ rojo-700
$rojo-800
$rojo-900
$ naranja#fd7e14
$naranja-100
$naranja-200
$naranja-300
$naranja-400
$naranja-500
$naranja-600
$naranja-700
$naranja-800
$naranja-900
$amarillo#ffc107
$amarillo-100
$amarillo-200
$amarillo-300
$amarillo-400
$amarillo-500
$amarillo-600
$amarillo-700
$amarillo-800
$amarillo-900
$verde#198754
$verde-100
$verde-200
$verde-300
$verde-400
$verde-500
$verde-600
$verde-700
$verde-800
$verde-900
$ verde azulado#20c997
$ verde azulado-100
$ verde azulado-200
$ verde azulado-300
$ verde azulado-400
$ verde azulado-500
$ verde azulado-600
$ verde azulado-700
$ verde azulado-800
$ verde azulado-900
$cian#0dcaf0
$cian-100
$cian-200
$cian-300
$cian-400
$cian-500
$cian-600
$cian-700
$cian-800
$cian-900
$gris-500#adb5bd
$gris-100
$gris-200
$gris-300
$gris-400
$gris-500
$gris-600
$gris-700
$gris-800
$gris-900
$negro#000
$blanco#fff

Notas sobre Sass

Sass no puede generar variables programáticamente, por lo que creamos variables manualmente para cada tinte y sombreado nosotros mismos. Especificamos el valor del punto medio (p. ej., $blue-500) y usamos funciones de color personalizadas para teñir (aclarar) o sombrear (oscurecer) nuestros colores a través de mix()la función de color de Sass.

Usar mix()no es lo mismo que lighten()y : darken()el primero combina el color especificado con blanco o negro, mientras que el segundo solo ajusta el valor de luminosidad de cada color. El resultado es un conjunto de colores mucho más completo, como se muestra en esta demostración de CodePen .

Nuestras funciones tint-color()y shade-color()se usan mix()junto con nuestra $theme-color-intervalvariable, que especifica un valor porcentual escalonado para cada color mixto que producimos. Consulte los archivos scss/_functions.scssy scss/_variables.scsspara obtener el código fuente completo.

Mapas Sass en color

Los archivos Sass de origen de Bootstrap incluyen tres mapas para ayudarlo a recorrer rápida y fácilmente una lista de colores y sus valores hexadecimales.

  • $colorsenumera todos nuestros 500colores base ( ) disponibles
  • $theme-colorsenumera todos los colores del tema con nombres semánticos (que se muestran a continuación)
  • $graysenumera todos los tintes y tonos de gris

Dentro scss/_variables.scssde , encontrará las variables de color de Bootstrap y el mapa de Sass. Aquí hay un ejemplo del $colorsmapa Sass:

$colors: (
  "blue":       $blue,
  "indigo":     $indigo,
  "purple":     $purple,
  "pink":       $pink,
  "red":        $red,
  "orange":     $orange,
  "yellow":     $yellow,
  "green":      $green,
  "teal":       $teal,
  "cyan":       $cyan,
  "white":      $white,
  "gray":       $gray-600,
  "gray-dark":  $gray-800
);

Agregue, elimine o modifique valores dentro del mapa para actualizar cómo se usan en muchos otros componentes. Desafortunadamente, en este momento, no todos los componentes utilizan este mapa de Sass. Las actualizaciones futuras se esforzarán por mejorar esto. Hasta entonces, planee hacer uso de las ${color}variables y este mapa de Sass.

Ejemplo

Así es como puede usarlos en su Sass:

.alpha { color: $purple; }
.beta {
  color: $yellow-300;
  background-color: $indigo-900;
}

Las clases de utilidad de color y fondocolor también están disponibles para configurar y background-colorusar los 500valores de color.

Generación de utilidades

Agregado en v5.1.0

Bootstrap no incluye utilidades colorpara background-colorcada variable de color, pero puede generarlas usted mismo con nuestra API de utilidades y nuestros mapas Sass extendidos agregados en v5.1.0.

  1. Para comenzar, asegúrese de haber importado nuestras funciones, variables, mixins y utilidades.
  2. Utilice nuestra map-merge-multiple()función para fusionar rápidamente varios mapas de Sass en un nuevo mapa.
  3. Combine este nuevo mapa combinado para ampliar cualquier utilidad con un {color}-{level}nombre de clase.

Aquí hay un ejemplo que genera utilidades de color de texto (por ejemplo, .text-purple-500) usando los pasos anteriores.

@import "bootstrap/scss/functions";
@import "bootstrap/scss/variables";
@import "bootstrap/scss/mixins";
@import "bootstrap/scss/utilities";

$all-colors: map-merge-multiple($blues, $indigos, $purples, $pinks, $reds, $oranges, $yellows, $greens, $teals, $cyans);

$utilities: map-merge(
  $utilities,
  (
    "color": map-merge(
      map-get($utilities, "color"),
      (
        values: map-merge(
          map-get(map-get($utilities, "color"), "values"),
          (
            $all-colors
          ),
        ),
      ),
    ),
  )
);

@import "bootstrap/scss/utilities/api";

Esto generará nuevas .text-{color}-{level}utilidades para cada color y nivel. También puede hacer lo mismo con cualquier otra utilidad y propiedad.