diff options
Diffstat (limited to 'src/layouts/_split-view.scss')
-rw-r--r-- | src/layouts/_split-view.scss | 38 |
1 files changed, 29 insertions, 9 deletions
diff --git a/src/layouts/_split-view.scss b/src/layouts/_split-view.scss index a76f6e8..f522254 100644 --- a/src/layouts/_split-view.scss +++ b/src/layouts/_split-view.scss | |||
@@ -15,10 +15,6 @@ | |||
15 | gap: props.get(vars.$col-gap); | 15 | gap: props.get(vars.$col-gap); |
16 | align-items: start; | 16 | align-items: start; |
17 | 17 | ||
18 | @include bem.modifier('gapless') { | ||
19 | gap: props.get(vars.$gapless); | ||
20 | } | ||
21 | |||
22 | @include bem.elem('panel') { | 18 | @include bem.elem('panel') { |
23 | flex: 1 1 auto; | 19 | flex: 1 1 auto; |
24 | inline-size: 100%; | 20 | inline-size: 100%; |
@@ -30,14 +26,34 @@ | |||
30 | min-inline-size: props.get(vars.$panel--side-25--min); | 26 | min-inline-size: props.get(vars.$panel--side-25--min); |
31 | } | 27 | } |
32 | 28 | ||
33 | @include bem.modifier('sticky') { | 29 | @include bem.modifier('sticky-0') { |
34 | position: sticky; | 30 | position: sticky; |
35 | inset-block-start: 0; | 31 | inset-block-start: 0; |
36 | } | 32 | } |
37 | 33 | ||
34 | @include bem.modifier('sticky') { | ||
35 | position: sticky; | ||
36 | inset-block-start: props.get(vars.$panel--sticky-offset); | ||
37 | } | ||
38 | |||
38 | @include bem.modifier('sticky-400') { | 39 | @include bem.modifier('sticky-400') { |
39 | position: sticky; | 40 | position: sticky; |
40 | inset-block-start: props.get(vars.$panel--sticky-400--inset); | 41 | inset-block-start: calc(props.get(vars.$panel--sticky-400--inset) + props.get(vars.$panel--sticky-offset)); |
42 | } | ||
43 | |||
44 | @include bem.modifier('sticky-1200') { | ||
45 | position: sticky; | ||
46 | inset-block-start: calc(props.get(vars.$panel--sticky-1200--inset) + props.get(vars.$panel--sticky-offset)); | ||
47 | } | ||
48 | } | ||
49 | |||
50 | @include bem.modifier('gapless') { | ||
51 | gap: props.get(vars.$gapless); | ||
52 | |||
53 | @include bem.elem('panel') { | ||
54 | @include bem.modifier('side-25') { | ||
55 | min-inline-size: calc(props.get(vars.$panel--side-25--min) + props.get(vars.$col-gap) - props.get(vars.$gapless)); | ||
56 | } | ||
41 | } | 57 | } |
42 | } | 58 | } |
43 | 59 | ||
@@ -50,19 +66,23 @@ | |||
50 | gap: props.get(vars.$row-gap); | 66 | gap: props.get(vars.$row-gap); |
51 | align-items: stretch; | 67 | align-items: stretch; |
52 | 68 | ||
69 | @include bem.modifier('gapless') { | ||
70 | gap: props.get(vars.$gapless); | ||
71 | } | ||
72 | |||
53 | @include bem.modifier('wrap-reverse') { | 73 | @include bem.modifier('wrap-reverse') { |
54 | flex-direction: column-reverse; | 74 | flex-direction: column-reverse; |
55 | } | 75 | } |
56 | 76 | ||
57 | @include bem.elem('panel') { | 77 | @include bem.elem('panel') { |
58 | flex: 1 1 auto; | 78 | inline-size: auto; |
59 | 79 | ||
60 | @include bem.modifier('side-25') { | 80 | @include bem.modifier('side-25') { |
61 | inline-size: auto; | 81 | inline-size: auto; |
62 | min-inline-size: 0; | 82 | min-inline-size: 0; |
63 | } | 83 | } |
64 | 84 | ||
65 | @include bem.modifier('sticky', 'sticky-400') { | 85 | @include bem.modifier('sticky', 'sticky-400', 'sticky-1200') { |
66 | position: static; | 86 | position: static; |
67 | } | 87 | } |
68 | } | 88 | } |