Color


These guidelines are the framework upon which we have built our system for how color is used in Vanilla, we use a fairly neutral color palette along with a traffic light palette.

$color-x-light
#fff

$color-light
#f7f7f7

$color-mid-x-light
#e5e5e5

$color-mid-light
#cdcdcd

$color-mid-dark
#666

$color-dark
#111

$color-x-dark
#000

$color-brand
#333

$color-negative
#c7162b

$color-caution
#f99b11

$color-positive
#0e8420

$color-information
#335280

$color-link
#007aa6

$color-accent
#333

$color-accent-background
#333

$color-navigation-background
#fff

You can define a brand color ($color-brand) that can be used for call-to-action buttons and other highlights across the framework. The default Vanilla brand color is $color-dark.

brand-color

Accessibility

It’s important for us to meet all web accessibility standards. Vanilla encourages meeting the minimum contrast ratios specified by WCAG 2.1 Level AA for text, icons and background colors.

Do:Use a minimum contrast ratio of 4.5 for normal text and UI components

text-color-do button-color-do

Don't:Use low-contrast text and background combinations. e.g., dark text on a dark background.

text-color-don't button-color-don't

Color theming

Starting with the 2.3 release, Vanilla framework introduces a theming mechanism. The current default for all patterns is referred to as the light theme. A subset of elements and patterns now offer a dark theme:

  • checkbox
  • hr
  • radio
  • navigation pattern
  • search box pattern
Element / Pattern Variable Default value
checkbox $theme-default-forms ‘light’
radio $theme-default-forms ‘light’
hr $theme-default-hr ‘light’
Navigation $theme-default-nav ‘light’
Search box $theme-default-p-search-box ‘light’

Future releases will expand this list to include all elements and patterns.

Setting the default color theme per element / pattern

To set the default theme to dark on any of the elements / patterns listed above:

  • Go to _settings_themes.scss
  • Set the value of the respective variable in the table above to ‘dark’

Invoking a theme that is not currently a default

Besides setting the default, you can invoke the non-default theme by adding a class to your markup. For the list of themed elements above, add is-dark (if the default for the respective element or pattern is light, or is-light if the default is dark.

Design

For more information view the color design spec, which includes the specification in markdown format and a PNG image.