|
9 | 9 |
|
10 | 10 | .hds-layout-grid {
|
11 | 11 | display: grid;
|
12 |
| - // Note: "Unitless 0" <length>s aren’t supported in math functions so we use 0px as the default col min width |
13 |
| - // https://drafts.csswg.org/css-values/#calc-type-checking |
| 12 | + // The column gap value is subtracted from the column-min-width to prevent overflow & simplify API for consumers |
14 | 13 |
|
15 |
| - // Gap is subtracted from column-min-width to prevent overflow & simplify API for consumers |
| 14 | + // Note: "Unitless 0" <length>s aren’t supported in math functions so we use 0px as a fallback value within calc() |
| 15 | + // https://drafts.csswg.org/css-values/#calc-type-checking |
16 | 16 | grid-template-columns:
|
17 | 17 | repeat(
|
18 | 18 | auto-fit,
|
19 | 19 | minmax(
|
20 | 20 | calc(
|
21 |
| - var(--hds-layout-grid-column-min-width, 0px) - var(--hds-layout-grid-gap, var(--hds-layout-grid-column-gap, 0px)) ), |
| 21 | + var(--hds-layout-grid-column-min-width, 0px) - var(--hds-layout-grid-column-gap, 0px) |
| 22 | + ), |
22 | 23 | 1fr
|
23 | 24 | )
|
24 | 25 | );
|
25 | 26 |
|
26 | 27 | // Note: The gap style is defined here to avoid setting it repeatedly for the gap size variants defined below.
|
27 | 28 | // For the gap size variants, we override the value of the gap custom properties to set the desired sizes.
|
28 | 29 | gap:
|
29 |
| - var(--hds-layout-grid-row-gap, var(--hds-layout-grid-gap, 0)) // rowGap |
30 |
| - var(--hds-layout-grid-column-gap, var(--hds-layout-grid-gap, 0)); // columnGap |
| 30 | + var(--hds-layout-grid-row-gap, 0) |
| 31 | + var(--hds-layout-grid-column-gap, 0); |
31 | 32 | }
|
32 | 33 |
|
33 | 34 | // inline
|
|
47 | 48 |
|
48 | 49 | // gap
|
49 | 50 |
|
50 |
| -// We set the values of the gap custom properties overriding the default value of 0px |
| 51 | +// We set the values of the gap custom properties overriding the default value of 0 |
| 52 | + |
| 53 | +// set row & column gap size together |
| 54 | +.hds-layout-grid--gap-4 { |
| 55 | + --hds-layout-grid-row-gap: 4px; |
| 56 | + --hds-layout-grid-column-gap: 4px; |
| 57 | +} |
| 58 | + |
| 59 | +.hds-layout-grid--gap-8 { |
| 60 | + --hds-layout-grid-row-gap: 8px; |
| 61 | + --hds-layout-grid-column-gap: 8px; |
| 62 | +} |
| 63 | + |
| 64 | +.hds-layout-grid--gap-12 { |
| 65 | + --hds-layout-grid-row-gap: 12px; |
| 66 | + --hds-layout-grid-column-gap: 12px; |
| 67 | +} |
51 | 68 |
|
52 |
| -// set row & column gap together |
53 |
| -.hds-layout-grid--gap-4 { --hds-layout-grid-gap: 4px;} |
54 |
| -.hds-layout-grid--gap-8 { --hds-layout-grid-gap: 8px; } |
55 |
| -.hds-layout-grid--gap-12 { --hds-layout-grid-gap: 12px; } |
56 |
| -.hds-layout-grid--gap-16 { --hds-layout-grid-gap: 16px; } |
57 |
| -.hds-layout-grid--gap-24 { --hds-layout-grid-gap: 24px; } |
58 |
| -.hds-layout-grid--gap-32 { --hds-layout-grid-gap: 32px; } |
59 |
| -.hds-layout-grid--gap-48 { --hds-layout-grid-gap: 48px; } |
| 69 | +.hds-layout-grid--gap-16 { |
| 70 | + --hds-layout-grid-row-gap: 16px; |
| 71 | + --hds-layout-grid-column-gap: 16px; |
| 72 | +} |
| 73 | + |
| 74 | +.hds-layout-grid--gap-24 { |
| 75 | + --hds-layout-grid-row-gap: 24px; |
| 76 | + --hds-layout-grid-column-gap: 24px; |
| 77 | +} |
| 78 | + |
| 79 | +.hds-layout-grid--gap-32 { |
| 80 | + --hds-layout-grid-row-gap: 32px; |
| 81 | + --hds-layout-grid-column-gap: 32px; |
| 82 | +} |
| 83 | + |
| 84 | +.hds-layout-grid--gap-48 { |
| 85 | + --hds-layout-grid-row-gap: 48px; |
| 86 | + --hds-layout-grid-column-gap: 48px; |
| 87 | +} |
60 | 88 |
|
61 |
| -// set just row gap |
| 89 | +// set just row gap size |
62 | 90 | .hds-layout-grid--row-gap-4 { --hds-layout-grid-row-gap: 4px; }
|
63 | 91 | .hds-layout-grid--row-gap-8 { --hds-layout-grid-row-gap: 8px; }
|
64 | 92 | .hds-layout-grid--row-gap-12 { --hds-layout-grid-row-gap: 12px; }
|
|
67 | 95 | .hds-layout-grid--row-gap-32 { --hds-layout-grid-row-gap: 32px; }
|
68 | 96 | .hds-layout-grid--row-gap-48 { --hds-layout-grid-row-gap: 48px; }
|
69 | 97 |
|
70 |
| -// set just column gap |
| 98 | +// set just column gap size |
71 | 99 | .hds-layout-grid--column-gap-4 { --hds-layout-grid-column-gap: 4px; }
|
72 | 100 | .hds-layout-grid--column-gap-8 { --hds-layout-grid-column-gap: 8px; }
|
73 | 101 | .hds-layout-grid--column-gap-12 { --hds-layout-grid-column-gap: 12px; }
|
|
0 commit comments