`{.language-html} as needed.
-
-
-Example: Nested list markup
-
- ~~~html
-
- ~~~
-
-
-
-
-
-
## Aspect Ratio
To set the aspect ratio of an element, use the `aspect-ratio`{.token .attr-name} CSS property:
diff --git a/www/docs/80-utils.md b/www/docs/80-utils.md
index 46543e7..7a58b4c 100644
--- a/www/docs/80-utils.md
+++ b/www/docs/80-utils.md
@@ -114,10 +114,6 @@ You can set `--density` yourself in inline styles or your own CSS:
`.main-font`
: Renders the text in the main font (`--main-font`).
-~~`.primary-font`~~
-: **Deprecated:**{.bad .color} Will be removed in version 2.0.
- Use `.main-font` instead.
-
`.secondary-font`
: Renders the text in the secondary font (`--secondary-font`).
@@ -223,8 +219,6 @@ The following classes can be used to make one element look like another:
To get a smaller font size, use the `.` masquerade.
The `.` class makes things bigger, with special treatment for some elements.
-**Deprecated:**{.bad .color} We have converted our `.big` class to a masquerade in honor of W3C deprecating the ``{.language-html} HTML tag.
-The `.big` class will be removed in version 2.0.
Example: Masquerade markups
@@ -265,26 +259,25 @@ The `.big` class will be removed in version 2.0.
## Theme selection
By default, missing.css applies a light or dark theme based on the visitor's OS settings.
-To force the theme independently of `@prefers-color-scheme`{.language-css} you can use the following:
-
-~~Add the `.-dark-theme` class to your root element to use the dark theme.~~
-**Deprecated:**{.bad .color} Will be removed in version 2.0.
-Use ` `{.language-html} instead.
+To force the theme, you can set `color-scheme: light`{.language-css} or `color-scheme: dark`{.language-css} on the `html` element.
-~~Add the `.-no-dark-theme` class to your root element to use the light theme.~~
-**Deprecated:**{.bad .color} Will be removed in version 2.0.
-Use ` `{.language-html} instead.
+It is recommended that you include a ` `{.language-html} tag in the ``{.language-html} of your document.
+This allows the browser to render form controls and other native elements in the appropriate colors before the CSS is loaded.
Example: Theme toggle markup
- ~~~ html
-
+ ~~~ css
+ /* style.css */
+ html {
+ &:has([name=theme][value=light]:checked) { color-scheme: light }
+ &:has([name=theme][value=dark]:checked) { color-scheme: dark }
+ &:has([name=theme][value=auto]:checked) { color-scheme: light dark }
+ }
+ ~~~
+ ~~~ html
+
Select theme
@@ -298,9 +291,11 @@ Use `
`{.language-html} instead.
Select theme
@@ -324,13 +319,6 @@ Until browser support for detecting vertical writing modes has improved,
[progress bars]: /docs/forms/#progress-bars
-## Reset
-
-~~Use the `.all:initial` class to reset all CSS properties on an
-element and return it to its browser-default styles.~~
-**Deprecated:**{.bad .color} Will be removed in version 2.0.
-
-
## Print
The following utilities can be used to fine-tune the display of your webpage when it is being printed.
diff --git a/www/docs/90-flex.md b/www/docs/90-flex.md
index c7583ef..c1083a5 100644
--- a/www/docs/90-flex.md
+++ b/www/docs/90-flex.md
@@ -22,9 +22,6 @@ Pair this with `.flex-wrap:wrap-reverse` to reverse the order when displayed as
All of `.flex-row`, `.flex-column` and `.flex-switch` will remove margins from their children, and have a [gap] set to `--gap`.
-**Deprecated:**{.bad .color} The original names for these classes, `.f-row`, `.f-col`, and `.f-switch` (as well as `--f-switch-threshold`), have been deprecated in favor of the more intuitive names given above.
-The original names will be removed in version 2.0.
-
[gap]: https://developer.mozilla.org/en-US/docs/Web/CSS/gap
diff --git a/www/docs/A0-grid.md b/www/docs/A0-grid.md
index c82ae43..3754cde 100644
--- a/www/docs/A0-grid.md
+++ b/www/docs/A0-grid.md
@@ -5,53 +5,176 @@ url: ./grid/
# Grid
-To create a CSS Grid-based layout in missing.css, use the `.grid` class.
+To create CSS Grid-based layouts in missing.css, we offer a small but powerful collection of utility classes.
-By default, the grid will have equal-width columns but uneven rows.
-To override these, you have the `.grid-even-rows` and `.grid-variable-cols` classes.
+
+ Contents:
-To specify the row and column an element should occupy, use the `data-cols`{.token .attr-name} and `data-rows`{.token .attr-name} attributes:
+ [[toc]]
-`data-cols="1"`
-: Element will take up first column, next available row
+
-`data-cols="1 3"`
-: Element will take up columns 1 to 3 (both 1 and 3 included), next available row
+## Layout grid
-`data-cols="1 3" data-rows="2 3"`
-: Element will take up a 3×2 space, with a 1 column gap above
+`.layout-grid` is a responsive grid container that can be used for custom layouts.
+Authors are responsible for defining `grid-template`{.token .attr-name} for the `.layout-grid` element,
+as well as `grid-area`{.token .attr-name} on the grid cells.
+On smaller screens, the container will stack its children vertically.
-**Warning**: Our column specifications are based on _rows_, not _lines_.
-This means ``{.language-html} spans two columns, as opposed to `grid-column: 1 / 2;`{.language-css} which spans only one.
-{.box .warn}
+**Tip**: In browsers that [support the new expanded `attr()` function][attr],
+missing.css will set `grid-area`{.token .attr-name} values for you based on their `id`{.token .attr-name} attribute.
+Until support is more widespread, we recommend setting `
`{.language-html} on the grid cells.
+{.info .box}
-We support columns up to 12.
+[attr]: https://caniuse.com/css3-attr
-To change the layout based on viewport size,
-add `@s` (small, ≤768px) or `@l` (large, ≥1024px) to the end of the attributes:
+
+Example: Layout grid markup
+
+ ~~~ html
+
+
+ Title
+
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit.
+ Donec a diam lectus.
+ Sed sit amet ipsum mauris.
+ Maecenas congue ligula ac quam viverra nec consectetur ante hendrerit.
+ Donec et mollis dolor.
+
+ ~~~
+
+
+
+
+
+ Title
+
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit.
+ Donec a diam lectus.
+ Sed sit amet ipsum mauris.
+ Maecenas congue ligula ac quam viverra nec consectetur ante hendrerit.
+ Donec et mollis dolor.
+
+
+
+
+## Flow grid
+
+The `.flow-grid` is an auto-wrapping grid container that can be used for cards.
+Column size is determined by the `--cell-length` variable, which defaults to `--card-length`.
+On smaller screens, the grid will collapse into a single column.
-`data-cols@s="1" data-cols="1 2" data-cols@l="1 3"`
-: Element will take 1 column in small screens, 2 columns on medium screens and 3 on large screens.
+
+Example: Flow grid markup
+
+ ~~~ html
+
+
+
+
+ Bear Name
+
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit.
+ Donec a diam lectus.
+ Sed sit amet ipsum mauris.
+
+
+
+ ~~~
+
+
+
+
+
+
+
+ Bear Name
+
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit.
+ Donec a diam lectus.
+ Sed sit amet ipsum mauris.
+
+
+
+ Bear Name
+
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit.
+ Donec a diam lectus.
+ Sed sit amet ipsum mauris.
+
+
+
+ Bear Name
+
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit.
+ Donec a diam lectus.
+ Sed sit amet ipsum mauris.
+
+
+
+ Bear Name
+
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit.
+ Donec a diam lectus.
+ Sed sit amet ipsum mauris.
+
+
+
-To change the layout for printing, add `@p` to the end of the attributes.
+## Row grid
+`.row-grid` can be used to create a compact row of equal-width cells.
+On smaller screens, the items are stacked.
+Can be combined with `.margin-block:auto` to center the items in the block direction.
-Example: Grid markup for even rows
+Example: Row grid markup
~~~ html
-
-
Sidebar
-
Main
-
Aux
+
+
Welcome to my call to action blurb!
+
+ This is the actual blurb of the call to action blurb.
+
+
~~~
-
-
Sidebar
-
Main
-
Aux
+
+
Welcome to my call to action blurb!
+
+ This is the actual blurb of the call to action blurb.
+ You can tell because it's blurb-y and you feel called to take action.
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit.
+ Donec a diam lectus.
+ Sed sit amet ipsum mauris.
+ Maecenas congue ligula ac quam viverra nec consectetur ante hendrerit.
+ Donec et mollis dolor.
+
+ So take action and click one of the action buttons below.
+