diff options
| author | Mark Otto <[email protected]> | 2020-11-29 11:56:08 -0800 |
|---|---|---|
| committer | XhmikosR <[email protected]> | 2020-12-01 19:17:06 +0200 |
| commit | 3b015ed34eb229fe361b7d6c21e1c0eed232212a (patch) | |
| tree | 54ed5a64bb5489e2f53d366f1b9e0c2f5d7bdaaa | |
| parent | ff130b17dcef596466318f6b8f1adb9f1edf6048 (diff) | |
| download | bootstrap-3b015ed34eb229fe361b7d6c21e1c0eed232212a.tar.xz bootstrap-3b015ed34eb229fe361b7d6c21e1c0eed232212a.zip | |
Update breadcrumb docs and dividers
- Add CSS custom property with fallback to Sass variable
- Update docs to mention the new CSS custom property
- Rewrite some of the docs to use divider instead of separator, and add some context here and there
| -rw-r--r-- | scss/_breadcrumb.scss | 2 | ||||
| -rw-r--r-- | site/content/docs/5.0/components/breadcrumb.md | 41 |
2 files changed, 38 insertions, 5 deletions
diff --git a/scss/_breadcrumb.scss b/scss/_breadcrumb.scss index b30668b5d..aa9dd4ad7 100644 --- a/scss/_breadcrumb.scss +++ b/scss/_breadcrumb.scss @@ -18,7 +18,7 @@ float: left; // Suppress inline spacings and underlining of the separator padding-right: $breadcrumb-item-padding-x; color: $breadcrumb-divider-color; - content: escape-svg($breadcrumb-divider); + content: var(--bs-breadcrumb-divider, escape-svg($breadcrumb-divider)); } } diff --git a/site/content/docs/5.0/components/breadcrumb.md b/site/content/docs/5.0/components/breadcrumb.md index a6e953bb5..433d5505b 100644 --- a/site/content/docs/5.0/components/breadcrumb.md +++ b/site/content/docs/5.0/components/breadcrumb.md @@ -3,10 +3,13 @@ layout: docs title: Breadcrumb description: Indicate the current page's location within a navigational hierarchy that automatically adds separators via CSS. group: components +toc: true --- ## Example +Use an ordered or unordered list with linked list items to create a minimally styled breadcrumb. Use our utilities to add additional styles as desired. + {{< example >}} <nav aria-label="breadcrumb"> <ol class="breadcrumb"> @@ -30,21 +33,51 @@ group: components </nav> {{< /example >}} -## Changing the separator +## Dividers + +Dividers are automatically added in CSS through [`::before`](https://developer.mozilla.org/en-US/docs/Web/CSS/::before) and [`content`](https://developer.mozilla.org/en-US/docs/Web/CSS/content). They can be changed by modifying a local CSS custom property `--bs-breadcrumb-divider`, or through the `$breadcrumb-divider` Sass variable. We default to our Sass variable, which is set as a fallback to the custom property. This way, you get a global divider that you can override without recompiling CSS at any time. + +{{< example >}} +<nav style="--bs-breadcrumb-divider: '>';" aria-label="breadcrumb"> + <ol class="breadcrumb"> + <li class="breadcrumb-item"><a href="#">Home</a></li> + <li class="breadcrumb-item active" aria-current="page">Library</li> + </ol> +</nav> +{{< /example >}} -Separators are automatically added in CSS through [`::before`](https://developer.mozilla.org/en-US/docs/Web/CSS/::before) and [`content`](https://developer.mozilla.org/en-US/docs/Web/CSS/content). They can be changed by changing `$breadcrumb-divider`. The [quote](https://sass-lang.com/documentation/modules/string#quote) function is needed to generate the quotes around a string, so if you want `>` as separator, you can use this: +When modifying via Sass, the [quote](https://sass-lang.com/documentation/modules/string#quote) function is required to generate the quotes around a string. For example, using `>` as the divider, you can use this: ```scss $breadcrumb-divider: quote(">"); ``` -It's also possible to use an **embedded SVG icon**: +It's also possible to use an **embedded SVG icon**. Apply it via our CSS custom property, or use the Sass variable. + +{{< example >}} +<nav style="--bs-breadcrumb-divider: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath d='M2.5 0L1 1.5 3.5 4 1 6.5 2.5 8l4-4-4-4z' fill='currentColor'/%3E%3C/svg%3E");" aria-label="breadcrumb"> + <ol class="breadcrumb"> + <li class="breadcrumb-item"><a href="#">Home</a></li> + <li class="breadcrumb-item active" aria-current="page">Library</li> + </ol> +</nav> +{{< /example >}} ```scss $breadcrumb-divider: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath d='M2.5 0L1 1.5 3.5 4 1 6.5 2.5 8l4-4-4-4z' fill='currentColor'/%3E%3C/svg%3E"); ``` -The separator can be removed by setting `$breadcrumb-divider` to `none`: +You can also remove the divider setting `--bs-breadcrumb-divider: ;` (empty strings in CSS custom properties counts as a value), or setting the Sass variable to `$breadcrumb-divider: none;`. + +{{< example >}} +<nav style="--bs-breadcrumb-divider: ;" aria-label="breadcrumb"> + <ol class="breadcrumb"> + <li class="breadcrumb-item"><a href="#">Home</a></li> + <li class="breadcrumb-item active" aria-current="page">Library</li> + </ol> +</nav> +{{< /example >}} + ```scss $breadcrumb-divider: none; |
