]> git.ipfire.org Git - thirdparty/bootstrap.git/commitdiff
Use box shadows instead of linear gradients to colorize tables (#32348)
authorMartijn Cuppens <martijn.cuppens@gmail.com>
Fri, 11 Dec 2020 13:49:22 +0000 (14:49 +0100)
committerGitHub <noreply@github.com>
Fri, 11 Dec 2020 13:49:22 +0000 (15:49 +0200)
Co-authored-by: XhmikosR <xhmikosr@gmail.com>
scss/_tables.scss
site/content/docs/5.0/content/tables.md

index 506c60be0e614fdfa92d734ba68192ed827b22ed..50368293a99b12b238c9b2be91491b3f440dda40 100644 (file)
@@ -25,8 +25,8 @@
   > :not(caption) > * > * {
     padding: $table-cell-padding-y $table-cell-padding-x;
     background-color: var(--#{$variable-prefix}table-bg);
-    background-image: linear-gradient(var(--#{$variable-prefix}table-accent-bg), var(--#{$variable-prefix}table-accent-bg));
     border-bottom-width: $table-border-width;
+    box-shadow: inset 0 0 0 9999px var(--#{$variable-prefix}table-accent-bg);
   }
 
   > tbody {
index 26f21317284910f64cec6260c2db5c78fafa9283..46679a9b082fa3d8792b3c4bbe85510c0df987e9 100644 (file)
@@ -213,7 +213,7 @@ Highlight a table row or cell by adding a `.table-active` class.
 For the accented tables ([striped rows](#striped-rows), [hoverable rows](#hoverable-rows), and [active tables](#active-tables)), we used some techniques to make these effects work for all our [table variants](#variants):
 
 - We start by setting the background of a table cell with the `--bs-table-bg` custom property. All table variants then set that custom property to colorize the table cells. This way, we don't get into trouble if semi-transparent colors are used as table backgrounds.
-- Then we add a gradient on the table cells with `background-image: linear-gradient(var(--bs-table-accent-bg), var(--bs-table-accent-bg));` to layer on top of any specified `background-color`. Since `--bs-table-accent-bg` is transparent by default, we have an invisible transparent linear gradient by default.
+- Then we add an inset box shadow on the table cells with `box-shadow: inset 0 0 0 9999px var(--bs-table-accent-bg);` to layer on top of any specified `background-color`. Because we use a huge spread and no blur, the color will be monotone. Since `--bs-table-accent-bg` is unset by default, we don't have a default box shadow.
 - When either `.table-striped`, `.table-hover` or `.table-active` classes are added, the `--bs-table-accent-bg` is set to a semitransparent color to colorize the background.
 - For each table variant, we generate a `--bs-table-accent-bg` color with the highest contrast depending on that color. For example, the accent color for `.table-primary` is darker while `.table-dark` has a lighter accent color.
 - Text and border colors are generated the same way, and their colors are inherited by default.