2200cde988
From an engineers perspective, whenever specifying colors from now on we should use the form: ``` color: rgb(var(--tone-red-500)); ``` Please note: - Use rgb. This lets us do this like rgb(var(--tone-red-500) / 10%) so we can use a 10% opacity red-500 if we ever need to whilst still making use of our color tokens. - Use --tone-colorName-000 (so the prefix tone). Previously we could use a mix of --gray-500: $gray-500 (note the left hand CSS prop and right hand SASS var) for the things we need to theme currently. As we no longer use SASS we can't do --gray-500: --gray-500, so we now do --tone-gray-500: --gray-500. Just for clarity after that, whenever specifying a color anywhere, use rgb and --tone. There is only one reason where you might not use tone, and that is if you never want a color to be affected by a theme (for example a background shadow probably always should use --black) There are a 2 or 3 left for the code editor, plus our custom-query values |
||
---|---|---|
.. | ||
debug.scss | ||
index.scss | ||
layout.scss | ||
README.mdx | ||
skin.scss |
--- class: css --- # MainNavVertical Used for styles of vertically orientated main application menus/navigation. Menu item active state is applied on `.is-active` `<li>` elements. Additionally you can use the following placeholders for setting certin states manually: - `%menu-nav-vertical-action-active` The 'active' or currently selected state. - `%menu-nav-vertical-action-intent` The highlighted state, usually for `:hover` and `:focus`. `%menu-nav-vertical-hoisted` will 'hoist' an `<li>` element to the top of the containing block, the containing block defaults to the current viewport. If you need to define a different ancestor for a containing block you can use `transform` (see below). ```hbs preview-template <div class="wrapper"> <nav class="main-nav-vertical in-viewport"> <ul> <li role="separator">Title</li> <li> <a href="">One</a> </li> <li class="is-active"> <a href="">Two (is-active)</a> </li> <li class="with-intent"> <a href="">Three (with-intent)</a> </li> <li class="hoisted"> <a href="">Four (hoisted)</a> </li> <li role="separator">Title</li> <li class="custom-active"> <a href="">One (custom-active)</a> </li> <li> <a href="">Two</a> </li> <li> <a href="">Three</a> </li> </ul> </nav> </div> ``` ```css preview-template .main-nav-vertical { @extend %main-nav-vertical; } .main-nav-vertical li.hoisted { @extend %main-nav-vertical-hoisted; } .main-nav-vertical .with-intent > * { @extend %main-nav-vertical-action-intent; } .main-nav-vertical .custom-active > * { @extend %main-nav-vertical-action-active; } .wrapper { /* a transform is required to mark this element as the containing block */ /* for hoisting, otherwise the viewport is the containing block */ transform: translate(0, 0); background-color: rgb(var(--tone-gray-600)); padding-top: 64px; } ```