UNPKG

@utrecht/components

Version:

Components for the Municipality of Utrecht based on the NL Design System architecture

185 lines (173 loc) 8.07 kB
/** * @license EUPL-1.2 * Copyright (c) 2021 Robbert Broersma */ /** * @license EUPL-1.2 * Copyright (c) 2021 Robbert Broersma */ /* stylelint-disable-next-line block-no-empty */ .utrecht-breadcrumb-nav { --utrecht-focus-background-color: var(--utrecht-breadcrumb-nav-link-focus-background-color); --utrecht-link-background-color: var(--utrecht-breadcrumb-nav-link-background-color); --utrecht-link-text-decoration: var(--utrecht-breadcrumb-nav-link-text-decoration); --utrecht-link-active-color: var( --utrecht-breadcrumb-nav-link-active-color, var(--utrecht-breadcrumb-nav-link-color) ); --utrecht-link-active-text-decoration: var( --utrecht-breadcrumb-nav-link-focus-text-decoration, var(--utrecht-breadcrumb-nav-link-text-decoration) ); --utrecht-link-focus-color: var(--utrecht-breadcrumb-nav-link-focus-color, var(--utrecht-breadcrumb-nav-link-color)); --utrecht-link-focus-text-decoration: var( --utrecht-breadcrumb-nav-link-focus-text-decoration, var(--utrecht-breadcrumb-nav-link-text-decoration) ); --utrecht-link-hover-color: var(--utrecht-breadcrumb-nav-link-hover-color, var(--utrecht-breadcrumb-nav-link-color)); --utrecht-link-hover-text-decoration: var( --utrecht-breadcrumb-nav-link-hover-text-decoration, var(--utrecht-breadcrumb-nav-link-text-decoration) ); --utrecht-link-visited-color: var(--utrecht-breadcrumb-nav-link-color); --utrecht-link-visited-text-decoration: var(--utrecht-link-text-decoration); --utrecht-link-color: var(--utrecht-breadcrumb-nav-link-color); --utrecht-link-placeholder-color: var(--utrecht-link-breadcrumb-link-disabled-color); font-family: var(--utrecht-document-font-family, inherit); font-size: var(--utrecht-breadcrumb-nav-font-size); line-height: var(--utrecht-breadcrumb-nav-line-height); text-transform: var(--utrecht-document-text-transform, inherit); } .utrecht-breadcrumb-nav__heading { display: none; } .utrecht-breadcrumb-nav__list { display: flex; flex-wrap: wrap; min-block-size: var(--utrecht-breadcrumb-nav-min-block-size); } .utrecht-breadcrumb-nav__list--html-ol { list-style: none; margin-block-end: 0; margin-block-start: 0; padding-inline-start: 0; } .utrecht-breadcrumb-nav__list--html-p { margin-block-end: 0; margin-block-start: 0; } .utrecht-breadcrumb-nav__item { block-size: 100%; } .utrecht-breadcrumb-nav__link { --utrecht-icon-size: var(--utrecht-breadcrumb-nav-link-icon-size); --utrecht-link-icon-size: var(--utrecht-breadcrumb-nav-link-icon-size); background-color: var(--utrecht-breadcrumb-nav-link-background-color); display: inline-block; padding-block-end: var(--utrecht-breadcrumb-nav-item-padding-block-end, 8px); padding-block-start: var(--utrecht-breadcrumb-nav-item-padding-block-start, 8px); padding-inline-end: var(--utrecht-breadcrumb-nav-item-padding-inline-end, 8px); padding-inline-start: var(--utrecht-breadcrumb-nav-item-padding-inline-start, 8px); } .utrecht-breadcrumb-nav__link--current { --utrecht-link-current-font-weight: var(--utrecht-breadcrumb-nav-link-current-font-weight, inherit); /* configure the `current` `cursor` only when the current state is applied */ --_utrecht-breadcrumb-nav-link-current-cursor: var(--utrecht-action-inert-cursor, default); font-weight: var(--utrecht-breadcrumb-nav-link-current-font-weight, inherit); } .utrecht-breadcrumb-nav__link--disabled { --utrecht-link-placeholder-color: var( --utrecht-breadcrumb-nav-link-disabled-color, var(--utrecht-breadcrumb-nav-link-color) ); /* configure the `disabled` `cursor` only when the current state is applied */ --_utrecht-breadcrumb-nav-link-disabled-cursor: var(--utrecht-action-disabled-cursor, not-allowed); background-color: var(--utrecht-breadcrumb-nav-link-disabled-background-color, var(--utrecht-breadcrumb-nav-link-background-color)); /* Use the `current` cursor when available, otherwise use the `disabled` cursor */ cursor: var(--_utrecht-breadcrumb-nav-link-current-cursor, var(--_utrecht-breadcrumb-nav-link-disabled-cursor)); } /* stylelint-disable-next-line block-no-empty */ .utrecht-breadcrumb-nav__separator { /* * Overwrite `style` attribute using "private" CSS variable for <li> hack: * <li aria-hidden="true" hidden style="display: var(--_utrecht-breadcrumb-nav-separator-display, block)"> */ --_utrecht-breadcrumb-nav-separator-display: inline-flex; --utrecht-icon-size: var(--utrecht-breadcrumb-nav-separator-icon-size); align-items: center; color: var(--utrecht-breadcrumb-nav-separator-color); cursor: var(--utrecht-action-inert-cursor, default); display: var(--_utrecht-breadcrumb-nav-separator-display); inline-size: fit-content; -webkit-user-select: none; user-select: none; } .utrecht-breadcrumb-nav__separator--html-li { /* * Overwrite `style` attribute using "private" CSS variable for <li> hack: * <li aria-hidden="true" hidden style="display: var(--_utrecht-breadcrumb-nav-separator-display, block)"> */ --_utrecht-breadcrumb-nav-separator-display: inline-flex; --utrecht-icon-size: var(--utrecht-breadcrumb-nav-separator-icon-size); align-items: center; color: var(--utrecht-breadcrumb-nav-separator-color); cursor: var(--utrecht-action-inert-cursor, default); display: var(--_utrecht-breadcrumb-nav-separator-display); inline-size: fit-content; -webkit-user-select: none; user-select: none; } .utrecht-breadcrumb-nav--arrows { /* https://css-tricks.com/triangle-breadcrumbs/ */ --utrecht-breadcrumb-nav-arrow-size: 24px; min-block-size: var(--utrecht-breadcrumb-nav-min-block-size); overflow: hidden; } .utrecht-breadcrumb-nav--arrows .utrecht-breadcrumb-nav__link { background-color: var(--utrecht-breadcrumb-nav-arrows-link-background-color); padding-inline-end: 0; position: relative; } .utrecht-breadcrumb-nav--arrows .utrecht-breadcrumb-nav__link::after, .utrecht-breadcrumb-nav--arrows .utrecht-breadcrumb-nav__link::before { block-size: 0; border-block-end-width: var(--utrecht-breadcrumb-nav-min-block-size); border-block-start-width: var(--utrecht-breadcrumb-nav-min-block-size); border-color: transparent; border-style: solid; content: " "; display: block; inline-size: 0; inset-block-start: 50%; inset-inline-start: 100%; margin-block-start: calc(-1 * var(--utrecht-breadcrumb-nav-min-block-size)); position: absolute; } .utrecht-breadcrumb-nav--arrows .utrecht-breadcrumb-nav__link::after { border-inline-start-color: var(--utrecht-breadcrumb-nav-arrows-link-background-color); border-inline-start-width: var(--utrecht-breadcrumb-nav-arrow-size); z-index: 2; } .utrecht-breadcrumb-nav--arrows .utrecht-breadcrumb-nav__link::before { border-inline-start-color: var(--utrecht-document-background-color); border-inline-start-width: var(--utrecht-breadcrumb-nav-arrow-size); margin-block-start: calc(-1 * var(--utrecht-breadcrumb-nav-min-block-size)); margin-inline-start: 1px; z-index: 1; } .utrecht-breadcrumb-nav--arrows .utrecht-breadcrumb-nav__link--focus, .utrecht-breadcrumb-nav--arrows .utrecht-breadcrumb-nav__link:focus { --utrecht-link-focus-background-color: var(--utrecht-breadcrumb-nav-arrows-link-focus-background-color); background-color: var(--utrecht-breadcrumb-nav-arrows-link-focus-background-color); } .utrecht-breadcrumb-nav--arrows .utrecht-breadcrumb-nav__link--focus::after, .utrecht-breadcrumb-nav--arrows .utrecht-breadcrumb-nav__link:focus::after { border-inline-start-color: var(--utrecht-breadcrumb-nav-arrows-link-focus-background-color); } .utrecht-breadcrumb-nav--arrows .utrecht-breadcrumb-nav__link ~ .utrecht-breadcrumb-nav__link, .utrecht-breadcrumb-nav--arrows .utrecht-breadcrumb-nav__item ~ .utrecht-breadcrumb-nav__item .utrecht-breadcrumb-nav__link { padding-inline-start: calc(var(--utrecht-breadcrumb-nav-item-padding-inline-start) + var(--utrecht-breadcrumb-nav-arrow-size)); } .utrecht-breadcrumb-nav__item ~ .utrecht-breadcrumb-nav__item { margin-inline-start: var(--utrecht-breadcrumb-nav-item-divider-inline-size); }