diff --git a/scss/_variables.scss b/scss/_variables.scss index 0be9a9ab1..8d7c56afa 100644 --- a/scss/_variables.scss +++ b/scss/_variables.scss @@ -271,6 +271,7 @@ $paragraph-margin-bottom: 1rem !default; // Define the minimum dimensions at which your layout will change, // adapting to different screen sizes, for use in media queries. +// scss-docs-start grid-breakpoints $grid-breakpoints: ( xs: 0, sm: 576px, @@ -279,6 +280,7 @@ $grid-breakpoints: ( xl: 1200px, xxl: 1400px ) !default; +// scss-docs-end grid-breakpoints @include _assert-ascending($grid-breakpoints, "$grid-breakpoints"); @include _assert-starts-at-zero($grid-breakpoints, "$grid-breakpoints"); @@ -288,6 +290,7 @@ $grid-breakpoints: ( // // Define the maximum width of `.container` for different screen sizes. +// scss-docs-start container-max-widths $container-max-widths: ( sm: 540px, md: 720px, @@ -295,6 +298,7 @@ $container-max-widths: ( xl: 1140px, xxl: 1320px ) !default; +// scss-docs-end container-max-widths @include _assert-ascending($container-max-widths, "$container-max-widths"); @@ -795,6 +799,7 @@ $form-validation-states: ( // Warning: Avoid customizing these values. They're used for a bird's eye view // of components dependent on the z-axis and are designed to all work together. +// scss-docs-start zindex-stack $zindex-dropdown: 1000 !default; $zindex-sticky: 1020 !default; $zindex-fixed: 1030 !default; @@ -802,6 +807,7 @@ $zindex-modal-backdrop: 1040 !default; $zindex-modal: 1050 !default; $zindex-popover: 1060 !default; $zindex-tooltip: 1070 !default; +// scss-docs-end zindex-stack // Navs diff --git a/site/assets/scss/_layout.scss b/site/assets/scss/_layout.scss new file mode 100644 index 000000000..116df720e --- /dev/null +++ b/site/assets/scss/_layout.scss @@ -0,0 +1,35 @@ +.bd-layout { + @include media-breakpoint-up(md) { + display: grid; + gap: $grid-gutter-width; + grid-template-areas: + "sidebar intro" + "sidebar toc" + "sidebar content"; + grid-template-columns: 1fr 3fr; + } + + @include media-breakpoint-up(lg) { + grid-template-areas: + "sidebar intro toc" + "sidebar content toc"; + grid-template-columns: 1fr 4fr 1fr; + } +} + +.bd-sidebar { + grid-area: sidebar; +} + +.bd-intro { + grid-area: intro; +} + +.bd-toc { + grid-area: toc; +} + +.bd-content { + grid-area: content; + min-width: 1px; // Fix width when bd-content contains a `
` https://github.com/twbs/bootstrap/issues/25410
+}
diff --git a/site/assets/scss/_toc.scss b/site/assets/scss/_toc.scss
index cc9a6d6dd..17ac4b819 100644
--- a/site/assets/scss/_toc.scss
+++ b/site/assets/scss/_toc.scss
@@ -1,6 +1,6 @@
-// stylelint-disable selector-max-type, selector-max-compound-selectors
+// stylelint-disable selector-max-type
-.bd-toc-wrap {
+.bd-toc {
@include media-breakpoint-up(lg) {
@supports (position: sticky) {
position: sticky;
@@ -11,34 +11,34 @@
overflow-y: auto;
}
}
-}
-.bd-toc nav {
- @include font-size(.875rem);
-
- ul {
- padding-left: 0;
- list-style: none;
+ nav {
+ @include font-size(.875rem);
ul {
- padding-left: 1rem;
- margin-top: .25rem;
+ padding-left: 0;
+ list-style: none;
+
+ ul {
+ padding-left: 1rem;
+ margin-top: .25rem;
+ }
+ }
+
+ li {
+ margin-bottom: .25rem;
+ }
+
+ a {
+ color: inherit;
+
+ &:not(:hover) {
+ text-decoration: none;
+ }
+
+ code {
+ font: inherit;
+ }
}
}
-
- li {
- margin-bottom: .25rem;
- }
-
- a {
- color: inherit;
- }
-
- a:not(:hover) {
- text-decoration: none;
- }
-
- a code {
- font: inherit;
- }
}
diff --git a/site/assets/scss/docs.scss b/site/assets/scss/docs.scss
index 53622b9c2..4da387aa4 100644
--- a/site/assets/scss/docs.scss
+++ b/site/assets/scss/docs.scss
@@ -37,6 +37,7 @@
@import "content";
@import "skippy";
@import "sidebar";
+@import "layout";
@import "toc";
@import "footer";
@import "component-examples";
diff --git a/site/content/docs/4.3/components/dropdowns.md b/site/content/docs/4.3/components/dropdowns.md
index 6b3fe8fc9..5260831da 100644
--- a/site/content/docs/4.3/components/dropdowns.md
+++ b/site/content/docs/4.3/components/dropdowns.md
@@ -607,7 +607,7 @@ By default, a dropdown menu is automatically positioned 100% from the top and al
If you want to use responsive alignment, disable dynamic positioning by adding the `data-display="static"` attribute and use the responsive variation classes.
-To align **right** the dropdown menu with the given breakpoint or larger, add `.dropdown-menu{-sm|-md|-lg|-xl}-right`.
+To align **right** the dropdown menu with the given breakpoint or larger, add `.dropdown-menu{-sm|-md|-lg|-xl|-xxl}-right`.
{{< example >}}
@@ -622,7 +622,7 @@ To align **right** the dropdown menu with the given breakpoint or larger, add `.
{{< /example >}}
-To align **left** the dropdown menu with the given breakpoint or larger, add `.dropdown-menu-right` and `.dropdown-menu{-sm|-md|-lg|-xl}-left`.
+To align **left** the dropdown menu with the given breakpoint or larger, add `.dropdown-menu-right` and `.dropdown-menu{-sm|-md|-lg|-xl|-xxl}-left`.
{{< example >}}
diff --git a/site/content/docs/4.3/components/list-group.md b/site/content/docs/4.3/components/list-group.md
index a8aad394d..c050e164d 100644
--- a/site/content/docs/4.3/components/list-group.md
+++ b/site/content/docs/4.3/components/list-group.md
@@ -96,7 +96,7 @@ Add `.list-group-flush` to remove some borders and rounded corners to render lis
## Horizontal
-Add `.list-group-horizontal` to change the layout of list group items from vertical to horizontal across all breakpoints. Alternatively, choose a responsive variant `.list-group-horizontal-{sm|md|lg|xl}` to make a list group horizontal starting at that breakpoint's `min-width`. Currently **horizontal list groups cannot be combined with flush list groups.**
+Add `.list-group-horizontal` to change the layout of list group items from vertical to horizontal across all breakpoints. Alternatively, choose a responsive variant `.list-group-horizontal-{sm|md|lg|xl|xxl}` to make a list group horizontal starting at that breakpoint's `min-width`. Currently **horizontal list groups cannot be combined with flush list groups.**
**ProTip:** Want equal-width list group items when horizontal? Add `.flex-fill` to each list group item.
diff --git a/site/content/docs/4.3/components/navbar.md b/site/content/docs/4.3/components/navbar.md
index 4ae3dddc4..e50821b8c 100644
--- a/site/content/docs/4.3/components/navbar.md
+++ b/site/content/docs/4.3/components/navbar.md
@@ -10,7 +10,7 @@ toc: true
Here's what you need to know before getting started with the navbar:
-- Navbars require a wrapping `.navbar` with `.navbar-expand{-sm|-md|-lg|-xl}` for responsive collapsing and [color scheme](#color-schemes) classes.
+- Navbars require a wrapping `.navbar` with `.navbar-expand{-sm|-md|-lg|-xl|-xxl}` for responsive collapsing and [color scheme](#color-schemes) classes.
- Navbars and their contents are fluid by default. Change the [container](#containers) to limit their horizontal width in different ways.
- Use our [spacing]({{< docsref "/utilities/spacing" >}}) and [flex]({{< docsref "/utilities/flex" >}}) utility classes for controlling spacing and alignment within navbars.
- Navbars are responsive by default, but you can easily modify them to change that. Responsive behavior depends on our Collapse JavaScript plugin.
@@ -481,7 +481,7 @@ Also note that **`.sticky-top` uses `position: sticky`, which [isn't fully suppo
## Responsive behaviors
-Navbars can utilize `.navbar-toggler`, `.navbar-collapse`, and `.navbar-expand{-sm|-md|-lg|-xl}` classes to change when their content collapses behind a button. In combination with other utilities, you can easily choose when to show or hide particular elements.
+Navbars can utilize `.navbar-toggler`, `.navbar-collapse`, and `.navbar-expand{-sm|-md|-lg|-xl|-xxl}` classes to change when their content collapses behind a button. In combination with other utilities, you can easily choose when to show or hide particular elements.
For navbars that never collapse, add the `.navbar-expand` class on the navbar. For navbars that always collapse, don't add any `.navbar-expand` class.
diff --git a/site/content/docs/4.3/content/tables.md b/site/content/docs/4.3/content/tables.md
index f42d37d68..76b799fca 100644
--- a/site/content/docs/4.3/content/tables.md
+++ b/site/content/docs/4.3/content/tables.md
@@ -721,7 +721,7 @@ You can also put the `` on the top of the table with `.caption-top`.
## Responsive tables
-Responsive tables allow tables to be scrolled horizontally with ease. Make any table responsive across all viewports by wrapping a `.table` with `.table-responsive`. Or, pick a maximum breakpoint with which to have a responsive table up to by using `.table-responsive{-sm|-md|-lg|-xl}`.
+Responsive tables allow tables to be scrolled horizontally with ease. Make any table responsive across all viewports by wrapping a `.table` with `.table-responsive`. Or, pick a maximum breakpoint with which to have a responsive table up to by using `.table-responsive{-sm|-md|-lg|-xl|-xxl}`.
{{< callout warning >}}
##### Vertical clipping/truncation
@@ -802,7 +802,7 @@ Across every breakpoint, use `.table-responsive` for horizontally scrolling tabl
### Breakpoint specific
-Use `.table-responsive{-sm|-md|-lg|-xl}` as needed to create responsive tables up to a particular breakpoint. From that breakpoint and up, the table will behave normally and not scroll horizontally.
+Use `.table-responsive{-sm|-md|-lg|-xl|-xxl}` as needed to create responsive tables up to a particular breakpoint. From that breakpoint and up, the table will behave normally and not scroll horizontally.
**These tables may appear broken until their responsive styles apply at specific viewport widths.**
diff --git a/site/content/docs/4.3/examples/grid/index.html b/site/content/docs/4.3/examples/grid/index.html
index 0d32279f3..9c01604be 100644
--- a/site/content/docs/4.3/examples/grid/index.html
+++ b/site/content/docs/4.3/examples/grid/index.html
@@ -46,6 +46,12 @@ include_js: false
.col-xl-4
+
+ .col-xxl-4
+ .col-xxl-4
+ .col-xxl-4
+
+
Three equal columns
Get three equal-width columns starting at desktops and scaling to large desktops. On mobile devices, tablets and below, the columns will automatically stack.
@@ -168,7 +174,7 @@ include_js: false
Containers
- Additional classes added in Bootstrap v4.4 allow containers that are 100% wide until a particular breakpoint.
+ Additional classes added in Bootstrap v4.4 allow containers that are 100% wide until a particular breakpoint. v5 adds a new xxl breakpoint.
.container
@@ -176,4 +182,5 @@ include_js: false
.container-md
.container-lg
.container-xl
+.container-xxl
.container-fluid
diff --git a/site/content/docs/4.3/examples/navbars/index.html b/site/content/docs/4.3/examples/navbars/index.html
index 6cd9ae380..8a5d4113c 100644
--- a/site/content/docs/4.3/examples/navbars/index.html
+++ b/site/content/docs/4.3/examples/navbars/index.html
@@ -198,6 +198,40 @@ extra_css:
+
+