]> git.ipfire.org Git - thirdparty/bootstrap.git/commitdiff
Add `z-index` utilities, `.z-*` (#37317)
authorMark Otto <markd.otto@gmail.com>
Sat, 22 Oct 2022 21:13:39 +0000 (17:13 -0400)
committerGitHub <noreply@github.com>
Sat, 22 Oct 2022 21:13:39 +0000 (17:13 -0400)
* Add z-index utilities, .z-*

* Fix missing comma in _utilities.scss

* Fix bundlewatch

* Fix lint

* Update site/content/docs/5.2/utilities/z-index.md

Co-authored-by: Julien Déramond <julien.deramond@orange.com>
* custom appearance

* linter

Co-authored-by: Julien Déramond <juderamond@gmail.com>
Co-authored-by: Julien Déramond <julien.deramond@orange.com>
.bundlewatch.config.json
scss/_utilities.scss
scss/_variables.scss
site/assets/scss/_component-examples.scss
site/content/docs/5.2/utilities/z-index.md [new file with mode: 0644]
site/data/sidebar.yml

index 8c390c6e0e27fec49ff87933698783a6431aa4fa..a14a0a15a71fca2dc71106f2c2705dbf61ef0ffa 100644 (file)
@@ -26,7 +26,7 @@
     },
     {
       "path": "./dist/css/bootstrap.css",
-      "maxSize": "29.5 kB"
+      "maxSize": "29.75 kB"
     },
     {
       "path": "./dist/css/bootstrap.min.css",
index 7a597046b33e7d902eafb3bc9d03916017a9067c..d69f89a982bed1ebbe69694189a4c92f80f08efa 100644 (file)
@@ -703,8 +703,13 @@ $utilities: map-merge(
         visible: visible,
         invisible: hidden,
       )
-    )
+    ),
     // scss-docs-end utils-visibility
+    "z-index": (
+      property: z-index,
+      class: z,
+      values: $zindex-levels,
+    )
   ),
   $utilities
 );
index 132c5dbb0e87d22b5963d73d4371eb5255e9395a..dd4bf01261b949ef67e7ae1d16778f7e4ac46d84 100644 (file)
@@ -1054,6 +1054,16 @@ $zindex-tooltip:                    1080 !default;
 $zindex-toast:                      1090 !default;
 // scss-docs-end zindex-stack
 
+// scss-docs-start zindex-levels-map
+$zindex-levels: (
+  n1: -1,
+  0: 0,
+  1: 1,
+  2: 2,
+  3: 3
+) !default;
+// scss-docs-end zindex-levels-map
+
 
 // Navs
 
index f4865daf8a42b9878363a61f5bc66a2c21bb0428..8f39b2209a3628b623daf51cfadda898f0edd757 100644 (file)
   min-height: 240px;
 }
 
+.bd-example-zindex-levels {
+  min-height: 15rem;
+
+  > div {
+    background-color: tint-color($bd-violet, 75%);
+    border: 1px solid tint-color($bd-violet, 50%);
+  }
+
+  > :nth-child(2) {
+    top: 3rem;
+    left: 3rem;
+  }
+  > :nth-child(3) {
+    top: 4.5rem;
+    left: 4.5rem;
+  }
+  > :nth-child(4) {
+    top: 6rem;
+    left: 6rem;
+  }
+  > :nth-child(5) {
+    top: 7.5rem;
+    left: 7.5rem;
+  }
+}
+
 //
 // Code snippets
 //
diff --git a/site/content/docs/5.2/utilities/z-index.md b/site/content/docs/5.2/utilities/z-index.md
new file mode 100644 (file)
index 0000000..afd6674
--- /dev/null
@@ -0,0 +1,46 @@
+---
+layout: docs
+title: Z-index
+description: Use our low-level `z-index` utilities to quickly change the stack level of an element or component.
+group: utilities
+toc: true
+---
+
+## Example
+
+{{< added-in "5.3.0" >}}
+
+Use `z-index` utilities to stack elements on top of one another. Requires a `position` value other than `static`, which can be set with custom styles or using our [position utilities]({{< docsref "/utilities/position/" >}}).
+
+{{< callout >}}
+We call these "low-level" `z-index` utilities because of their default values of `-1` through `3`, which we use for the layout of overlapping components. High-level `z-index` values are used for overlay components like modals and tooltips.
+{{< /callout >}}
+
+{{< example class="bd-example-zindex-levels position-relative" >}}
+<div class="z-n1 position-absolute p-5 rounded-3"></div>
+<div class="z-0 position-absolute p-5 rounded-3"></div>
+<div class="z-1 position-absolute p-5 rounded-3"></div>
+<div class="z-2 position-absolute p-5 rounded-3"></div>
+<div class="z-3 position-absolute p-5 rounded-3"></div>
+{{< /example >}}
+
+## Overlays
+
+Bootstrap overlay components—dropdown, modal, offcanvas, popover, toast, and tooltip—all have their own `z-index` values to ensure a usable experience with competing "layers" of an interface.
+
+Read about them in the [`z-index` layout page]({{< docsref "/layout/z-index" >}}).
+
+## Component approach
+
+On some components, we use our low-level `z-index` values to manage repeating elements that overlap one another (like buttons in a button group or items in a list group).
+
+Learn about our [`z-index` approach]({{< docsref "/extend/approach#z-index-scales" >}}).
+
+## CSS
+
+### Sass map
+
+Customize this Sass map to change the available values and generated utilities.
+
+{{< scss-docs name="zindex-levels-map" file="scss/_variables.scss" >}}
+
index c35631add42276d058ff9e1cca7b8c5a9ee99731..51c60ba62d85f3cd44ba8db99f057cbed9b7a60e 100644 (file)
     - title: Text
     - title: Vertical align
     - title: Visibility
+    - title: Z-index
 
 - title: Extend
   icon: tools