|
1 | 1 | @layer components {
|
2 |
| - .collapse:not(td):not(tr):not(colgroup) { |
3 |
| - @apply visible; |
| 2 | + .collapse { |
| 3 | + @apply !visible grid; |
4 | 4 | }
|
5 | 5 |
|
6 |
| - .collapse { |
7 |
| - @apply relative grid overflow-hidden; |
| 6 | + .collapse > .collapse-content { |
| 7 | + @apply relative col-start-1 row-start-2 grid min-h-0; |
8 | 8 |
|
9 |
| - grid-template-rows: auto 0fr; |
| 9 | + grid-template-rows: 0fr; |
10 | 10 | transition: grid-template-rows 0.2s;
|
11 | 11 | }
|
12 | 12 |
|
| 13 | + .collapse > .collapse-content > * { |
| 14 | + @apply overflow-hidden; |
| 15 | + } |
| 16 | + |
13 | 17 | .collapse-title,
|
14 | 18 | .collapse > input[type="checkbox"],
|
15 |
| - .collapse > input[type="radio"], |
16 |
| - .collapse-content { |
| 19 | + .collapse > input[type="radio"] { |
17 | 20 | @apply col-start-1 row-start-1;
|
18 | 21 | }
|
19 | 22 |
|
|
22 | 25 | @apply cursor-pointer appearance-none opacity-0;
|
23 | 26 | }
|
24 | 27 |
|
25 |
| - .collapse-content { |
26 |
| - @apply invisible col-start-1 row-start-2 min-h-0; |
27 |
| - |
28 |
| - transition: visibility 0.2s; |
29 |
| - } |
30 |
| - |
31 |
| - .collapse[open], |
32 |
| - .collapse-open, |
33 |
| - .collapse:focus:not(.collapse-close) { |
34 |
| - grid-template-rows: auto 1fr; |
35 |
| - } |
36 |
| - |
37 |
| - .collapse:not(.collapse-close):has(> input[type="checkbox"]:checked), |
38 |
| - .collapse:not(.collapse-close):has(> input[type="radio"]:checked) { |
39 |
| - grid-template-rows: auto 1fr; |
40 |
| - } |
41 |
| - |
42 |
| - .collapse[open] > .collapse-content, |
43 |
| - .collapse-open > .collapse-content, |
44 |
| - .collapse:focus:not(.collapse-close) > .collapse-content, |
45 |
| - .collapse:not(.collapse-close) > input[type="checkbox"]:checked ~ .collapse-content, |
46 |
| - .collapse:not(.collapse-close) > input[type="radio"]:checked ~ .collapse-content { |
47 |
| - @apply visible min-h-fit; |
| 28 | + .collapse > input[type="checkbox"]:checked ~ .collapse-content, |
| 29 | + .collapse > input[type="radio"]:checked ~ .collapse-content { |
| 30 | + grid-template-rows: 1fr; |
48 | 31 | }
|
49 | 32 | }
|
0 commit comments