diff --git a/site/content/docs/0.0/extend/approach.md b/site/content/docs/0.0/extend/approach.md
index f6624ed825..5b3571c5fa 100644
--- a/site/content/docs/0.0/extend/approach.md
+++ b/site/content/docs/0.0/extend/approach.md
@@ -29,11 +29,9 @@ We'll dive into each of these more throughout, but at a high level, here's what
OUDS Web's responsive styles are built to be responsive, an approach that's often referred to as _mobile-first_. We use this term in our docs and largely agree with it, but at times it can be too broad. While not every component _must_ be entirely responsive in OUDS Web, this responsive approach is about reducing CSS overrides by pushing you to add styles as the viewport becomes larger.
-
## Classes
diff --git a/site/content/docs/0.0/getting-started/contents.md b/site/content/docs/0.0/getting-started/contents.md
index 20581896a2..08749e56c0 100644
--- a/site/content/docs/0.0/getting-started/contents.md
+++ b/site/content/docs/0.0/getting-started/contents.md
@@ -85,7 +85,7 @@ OUDS Web includes a handful of options for including some or all of our compiled
| --- | --- | --- | --- | --- |
| `ouds-web.css`
`ouds-web.min.css`
`ouds-web.rtl.css`
`ouds-web.rtl.min.css` | Included | Included | Included | Included without Bootstrap utilities |
| `ouds-web-bootstrap.css`
`ouds-web-bootstrap.min.css`
`ouds-web-bootstrap.rtl.css`
`ouds-web-bootstrap.rtl.min.css` | Included | Included | Included | Included with Bootstrap utilities |
-| `ouds-web-grid.css`
`ouds-web-grid.rtl.css`
`ouds-web-grid.min.css`
`ouds-web-grid.rtl.min.css` | — | — | — | [Only flex utilities]({{< docsref "/utilities/flex" >}}) |
+| `ouds-web-grid.css`
`ouds-web-grid.rtl.css`
`ouds-web-grid.min.css`
`ouds-web-grid.rtl.min.css` | [Only grid system]({{< docsref "/layout/grid" >}}) | — | — | [Only flex utilities]({{< docsref "/utilities/flex" >}}) |
| `ouds-web-utilities.css`
`ouds-web-utilities.rtl.css`
`ouds-web-utilities.min.css`
`ouds-web-utilities.rtl.min.css` | — | — | — | Included |
| `ouds-web-reboot.css`
`ouds-web-reboot.rtl.css`
`ouds-web-reboot.min.css`
`ouds-web-reboot.rtl.min.css` | — | — | — | — |
{{< /bs-table >}}
diff --git a/site/content/docs/0.0/helpers/position.md b/site/content/docs/0.0/helpers/position.md
index 939963716d..407e9cc7f3 100644
--- a/site/content/docs/0.0/helpers/position.md
+++ b/site/content/docs/0.0/helpers/position.md
@@ -32,17 +32,19 @@ Position an element at the top of the viewport, from edge to edge, but only afte
...
```
-
+Stick to the top on viewports sized XL (extra large) or wider
+Stick to the top on viewports sized 2XL (extra extra large) or wider
+Stick to the top on viewports sized 3XL (extra extra extra large) or wider
+```
## Sticky bottom
@@ -52,14 +54,16 @@ Position an element at the bottom of the viewport, from edge to edge, but only a
...
```
-
+Stick to the bottom on viewports sized XL (extra large) or wider
+Stick to the bottom on viewports sized 2XL (extra extra large) or wider
+Stick to the bottom on viewports sized 3XL (extra extra extra large) or wider
+```
diff --git a/site/content/docs/0.0/helpers/stretched-link.md b/site/content/docs/0.0/helpers/stretched-link.md
index 1f5563f1f0..dd84df5841 100644
--- a/site/content/docs/0.0/helpers/stretched-link.md
+++ b/site/content/docs/0.0/helpers/stretched-link.md
@@ -37,10 +37,10 @@ Most custom components do not have `position: relative` by default, so we need t
{{< /example >}}
-
+{{< /example >}}
## Identifying the containing block
diff --git a/site/content/docs/0.0/layout/css-grid.md b/site/content/docs/0.0/layout/css-grid.md
index eb46e9ffc6..650e9c6ca5 100644
--- a/site/content/docs/0.0/layout/css-grid.md
+++ b/site/content/docs/0.0/layout/css-grid.md
@@ -46,7 +46,7 @@ Compared to the default grid system:
### Three columns
-Three equal-width columns across all viewports and devices can be created by using the `.g-col-4` classes.
+Three equal-width columns across all viewports and devices can be created by using the `.g-col-4` classes. Add [responsive classes](#responsive) to change the layout by viewport size.
{{< example class="bd-example-cssgrid" >}}
@@ -56,7 +56,7 @@ Three equal-width columns across all viewports and devices can be created by usi
{{< /example >}}
-
+{{< /example >}}
## Wrapping
diff --git a/site/content/docs/0.0/utilities/api.md b/site/content/docs/0.0/utilities/api.md
index 6ba9e1fc23..097c62a301 100644
--- a/site/content/docs/0.0/utilities/api.md
+++ b/site/content/docs/0.0/utilities/api.md
@@ -25,9 +25,9 @@ The `$utilities` map contains all our utilities and is later merged with your cu
| [`css-variable-name`](#css-variable-utilities) | Optional | null | Custom un-prefixed name for the CSS variable inside the ruleset. |
| [`local-vars`](#local-css-variables) | Optional | null | Map of local CSS variables to generate in addition to the CSS rules. |
| [`state`](#states) | Optional | null | List of pseudo-class variants (e.g., `:hover` or `:focus`) to generate. |
+| [`responsive`](#responsive) | Optional | `false` | Boolean indicating if responsive classes should be generated. |
| [`print`](#print) | Optional | `false` | Boolean indicating if print classes need to be generated. |
| `rtl` | Optional | `true` | Boolean indicating if utility should be kept in RTL. |
-
{{< /bs-table >}}
@@ -258,7 +258,7 @@ Output:
.opacity-100-hover:hover { opacity: 1 !important; }
```
-
+
+@media (min-width: 1880px) {
+ .opacity-xxl-0 { opacity: 0 !important; }
+ .opacity-xxl-25 { opacity: .25 !important; }
+ .opacity-xxl-50 { opacity: .5 !important; }
+ .opacity-xxl-75 { opacity: .75 !important; }
+ .opacity-xxl-100 { opacity: 1 !important; }
+}
+```
### Print
diff --git a/site/content/docs/0.0/utilities/display.md b/site/content/docs/0.0/utilities/display.md
index b5b6920c2e..2f494cfd5c 100644
--- a/site/content/docs/0.0/utilities/display.md
+++ b/site/content/docs/0.0/utilities/display.md
@@ -10,16 +10,16 @@ toc: true
## How it works
-Change the value of the [`display` property](https://developer.mozilla.org/en-US/docs/Web/CSS/display) with our display utility classes. We purposely support only a subset of all possible values for `display`. Classes can be combined for various effects as you need.
+Change the value of the [`display` property](https://developer.mozilla.org/en-US/docs/Web/CSS/display) with our responsive display utility classes. We purposely support only a subset of all possible values for `display`. Classes can be combined for various effects as you need.
## Notation
-
+Display utility classes that apply to all [breakpoints]({{< docsref "/layout/breakpoints" >}}), from `2xs` to `3xl`, have no breakpoint abbreviation in them. This is because those classes are applied from `min-width: 0;` and up, and thus are not bound by a media query. The remaining breakpoints, however, do include a breakpoint abbreviation.
-The classes are named using the format:
+As such, the classes are named using the format:
-- `.d-{value}`
-
+- `.d-{value}` for `2xs`
+- `.d-{breakpoint}-{value}` for `xs`, `sm`, `md`, `lg`, `xl`, `2xl`, and `3xl`.
Where *value* is one of:
@@ -37,7 +37,7 @@ Where *value* is one of:
The display values can be altered by changing the `display` values defined in `$utilities` and recompiling the SCSS.
-
+The media queries affect screen widths with the given breakpoint *or larger*. For example, `.d-lg-none` sets `display: none;` on `lg`, `xl`, `2xl`, and `3xl` screens.
Use display classes for showing and hiding elements.
+For faster mobile-friendly development, use responsive display classes for showing and hiding elements by device. Avoid creating entirely different versions of the same site, instead hide elements responsively for each screen size.
-To hide elements simply use the `.d-none` class.
+To hide elements simply use the `.d-none` class or one of the `.d-{xs,sm,md,lg,xl,2xl,3xl}-none` classes for any responsive screen variation.
-
+To show an element only on a given interval of screen sizes you can combine one `.d-*-none` class with a `.d-*-*` class, for example `.d-none .d-md-block .d-xl-none .d-2xl-none` will hide the element for all screen sizes except on medium and large devices.
{{< bs-table >}}
| Screen size | Class |
| --- | --- |
| Hidden on all | `.d-none` |
| Visible on all | `.d-block` |
-
-
+| Visible only on xl | `.d-none .d-xl-block .d-2xl-none` |
+| Visible only on 2xl | `.d-none .d-2xl-block .d-3xl-none` |
+| Visible only on 3xl | `.d-none .d-3xl-block` |-->
{{< /bs-table >}}
-
+{{< /example >}}
## Display in print
@@ -104,7 +108,7 @@ The print and display classes can be combined.
{{< example >}}
Screen Only (Hide on print only)
Print Only (Hide on screen only)
-
+Hide up to large on screen, but always show on print
{{< /example >}}
## CSS
diff --git a/site/content/docs/0.0/utilities/flex.md b/site/content/docs/0.0/utilities/flex.md
index 4c4dc9cbf9..91405319cd 100644
--- a/site/content/docs/0.0/utilities/flex.md
+++ b/site/content/docs/0.0/utilities/flex.md
@@ -20,8 +20,8 @@ Apply `display` utilities to create a flexbox container and transform **direct c
I'm an inline flexbox container!
{{< /example >}}
-
{{< markdown >}}
{{< flex.inline >}}
{{- range $.Site.Data.breakpoints }}
@@ -29,7 +29,7 @@ Apply `display` utilities to create a flexbox container and transform **direct c
- `.d{{ .abbr }}-inline-flex`
{{- end -}}
{{< /flex.inline >}}
-{{< /markdown >}}-->
+{{< /markdown >}}
## Direction
@@ -65,7 +65,7 @@ Use `.flex-column` to set a vertical direction, or `.flex-column-reverse` to st
{{< /example >}}
-
+{{< /markdown >}}
## Justify content
@@ -124,7 +124,7 @@ Use `justify-content` utilities on flexbox containers to change the alignment of
...
```
-
+{{< /markdown >}}
## Align items
@@ -179,7 +179,7 @@ Use `align-items` utilities on flexbox containers to change the alignment of fle
...
```
-
+{{< /markdown >}}
## Align self
@@ -233,7 +233,7 @@ Use `align-self` utilities on flexbox items to individually change their alignme
Aligned flex item
```
-
+{{< /markdown >}}
## Fill
@@ -259,7 +259,7 @@ Use the `.flex-fill` class on a series of sibling elements to force them into wi
{{< /example >}}
-
+{{< /markdown >}}
## Grow and shrink
@@ -290,7 +290,7 @@ Use `.flex-shrink-*` utilities to toggle a flex item's ability to shrink if nece
{{< /example >}}
-
+{{< /markdown >}}
## Auto margins
@@ -414,7 +414,7 @@ Change how flex items wrap in a flex container. Choose from no wrapping at all (
```
-
+{{< /markdown >}}
## Order
@@ -438,7 +438,7 @@ Change the _visual_ order of specific flex items with a handful of `order` utili
{{< /example >}}
-
+{{< /markdown >}}
## Align content
@@ -614,7 +614,7 @@ Use `align-content` utilities on flexbox containers to align flex items _togethe
...
```
-
+{{< /markdown >}}
## Media object
diff --git a/site/content/docs/0.0/utilities/float.md b/site/content/docs/0.0/utilities/float.md
index ed8baa0aa9..2028bee5b2 100644
--- a/site/content/docs/0.0/utilities/float.md
+++ b/site/content/docs/0.0/utilities/float.md
@@ -20,16 +20,18 @@ These utility classes float an element to the left or right, or disable floating
Use the [clearfix helper]({{< docsref "/helpers/clearfix" >}}) on a parent element to clear floats.
-
+{{< /markdown >}}
## CSS
diff --git a/site/content/docs/0.0/utilities/object-fit.md b/site/content/docs/0.0/utilities/object-fit.md
index daa13b29cd..ed0272a23b 100644
--- a/site/content/docs/0.0/utilities/object-fit.md
+++ b/site/content/docs/0.0/utilities/object-fit.md
@@ -10,7 +10,7 @@ toc: true
## How it works
-Change the value of the [`object-fit` property](https://developer.mozilla.org/en-US/docs/Web/CSS/object-fit) with our `object-fit` utility classes. This property tells the content to fill the parent container in a variety of ways, such as preserving the aspect ratio or stretching to take up as much space as possible.
+Change the value of the [`object-fit` property](https://developer.mozilla.org/en-US/docs/Web/CSS/object-fit) with our responsive `object-fit` utility classes. This property tells the content to fill the parent container in a variety of ways, such as preserving the aspect ratio or stretching to take up as much space as possible.
Classes for the value of `object-fit` are named using the format `.object-fit-{value}`. Choose from the following values:
@@ -32,17 +32,19 @@ Add the `object-fit-{value}` class to the [replaced element](https://developer.m
{{< placeholder width="140" height="120" class="object-fit-none border" text="Object fit none" markup="img" color="#333" background="#bbb" >}}
{{< /example >}}
-
+{{< placeholder width="140" height="80" class="object-fit-2xl-contain border" text="Contain on 2xl" markup="img" color="#333" background="#bbb" >}}
+{{< placeholder width="140" height="80" class="object-fit-3xl-contain border" text="Contain on 3xl" markup="img" color="#333" background="#bbb" >}}
+{{< /example >}}
## Video