@@ -27,15 +27,17 @@ body {
2727 height : 100% ;
2828}
2929
30+ /* Sidebar is closed by default and opened with body.sidebar-opened. */
3031.sidebar {
31- display : flex ;
32+ display : none ;
3233 flex-direction : column;
3334 width : var (--sidebarWidth );
3435 min-width : var (--sidebarMinWidth );
36+ max-width : 50vw ;
3537 height : 100% ;
3638 position : fixed;
3739 top : 0 ;
38- left : 0 ;
40+ left : calc ( -1 * var ( --sidebarWidth )) ;
3941 z-index : 100 ;
4042 resize : horizontal;
4143}
@@ -47,15 +49,12 @@ body {
4749 top : 0 ;
4850 left : 0 ;
4951 will-change : transform;
50- }
51-
52- .sidebar-toggle--animated .sidebar-button {
53- transition : transform var (--sidebarTransitionDuration ) ease-in-out;
52+ transform : translateX (0 );
5453}
5554
5655.content {
57- width : calc ( 100 % - var ( --sidebarWidth )) ;
58- left : var ( --sidebarWidth ) ;
56+ left : 0 ;
57+ width : 100 % ;
5958 height : 100% ;
6059 position : absolute;
6160}
@@ -71,63 +70,41 @@ body {
7170 outline : none;
7271}
7372
74- body : is (.sidebar-opening , .sidebar-opened ) .sidebar-button {
75- transform : translateX (calc (var (--sidebarWidth ) - 100% ));
73+ .sidebar-transition .sidebar ,
74+ .sidebar-transition .sidebar-button ,
75+ .sidebar-transition .content {
76+ transition : all var (--sidebarTransitionDuration ) ease-in-out allow-discrete;
7677}
7778
78- body .sidebar-opening-start .sidebar {
79- left : calc (-1 * var (--sidebarWidth ));
79+ .sidebar-open .sidebar ,
80+ .sidebar-transition .sidebar {
81+ display : flex;
8082}
8183
82- body .sidebar-opening-start .content {
83- width : 100% ;
84+ .sidebar-open .sidebar {
8485 left : 0 ;
8586}
8687
87- body .sidebar-opening .sidebar {
88- left : 0 ;
89- transition : left var (--sidebarTransitionDuration ) ease-in-out;
88+ .sidebar-open .sidebar-button {
89+ transform : translateX (calc (var (--sidebarWidth ) - 100% ));
9090}
9191
92- body .sidebar-opening .content {
92+ .sidebar-open .content {
9393 width : calc (100% - var (--sidebarWidth ));
9494 left : var (--sidebarWidth );
95- transition : all var (--sidebarTransitionDuration ) ease-in-out;
96- }
97-
98- body .sidebar-closing .sidebar-button {
99- transform : translateX (0 );
100- }
101-
102- body .sidebar-closing .sidebar {
103- left : calc (-1 * var (--sidebarWidth ));
104- transition : left var (--sidebarTransitionDuration ) ease-in-out;
105- }
106-
107- body .sidebar-closing .content {
108- width : 100% ;
109- left : 0 ;
110- transition : all var (--sidebarTransitionDuration ) ease-in-out;
111- }
112-
113- body .sidebar-closed .sidebar {
114- left : calc (-1 * var (--sidebarWidth ));
115- display : none;
116- }
117-
118- body .sidebar-closed .content {
119- width : 100% ;
120- left : 0 ;
12195}
12296
12397@media screen and (max-width : 768px ) {
124- .content ,
125- body .sidebar-opening .content {
98+ .sidebar-open .content {
12699 left : 0 ;
127100 width : 100% ;
128101 }
129102
130- body .sidebar-closed .sidebar-button {
103+ .sidebar {
104+ max-width : 90vw ;
105+ }
106+
107+ body : not (.sidebar-open ) .sidebar-button {
131108 position : absolute;
132109 }
133110}
0 commit comments