1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133
|
html,
body {
box-sizing: border-box;
height: 100%;
width: 100%;
}
body {
--sidebarWidth: 300px;
--sidebarMinWidth: 300px;
--sidebarTransitionDuration: 0.3s;
background-color: var(--background);
color: var(--textBody);
font-size: 16px;
font-family: var(--sansFontFamily);
line-height: 1.6875em;
}
*,
*:before,
*:after {
box-sizing: inherit;
}
.body-wrapper {
display: flex;
height: 100%;
}
.sidebar {
display: flex;
flex-direction: column;
width: var(--sidebarWidth);
min-width: var(--sidebarMinWidth);
height: 100%;
position: fixed;
top: 0;
left: 0;
z-index: 100;
resize: horizontal;
}
.sidebar-button {
padding: 26px 12px 18px 19px;
position: fixed;
z-index: 200;
top: 0;
left: 0;
will-change: transform;
}
.sidebar-toggle--animated.sidebar-button {
transition: transform var(--sidebarTransitionDuration) ease-in-out;
}
.content {
width: calc(100% - var(--sidebarWidth));
left: var(--sidebarWidth);
height: 100%;
position: absolute;
}
.content .content-inner {
max-width: var(--content-width);
min-height: 100%;
margin: 0 auto;
padding: 0 var(--content-gutter) 10px;
}
.content-inner:focus {
outline: none;
}
body:is(.sidebar-opening, .sidebar-opened) .sidebar-button {
transform: translateX(calc(var(--sidebarWidth) - 100%));
}
body.sidebar-opening-start .sidebar {
left: calc(-1 * var(--sidebarWidth));
}
body.sidebar-opening-start .content {
width: 100%;
left: 0;
}
body.sidebar-opening .sidebar {
left: 0;
transition: left var(--sidebarTransitionDuration) ease-in-out;
}
body.sidebar-opening .content {
width: calc(100% - var(--sidebarWidth));
left: var(--sidebarWidth);
transition: all var(--sidebarTransitionDuration) ease-in-out;
}
body.sidebar-closing .sidebar-button {
transform: translateX(0);
}
body.sidebar-closing .sidebar {
left: calc(-1 * var(--sidebarWidth));
transition: left var(--sidebarTransitionDuration) ease-in-out;
}
body.sidebar-closing .content {
width: 100%;
left: 0;
transition: all var(--sidebarTransitionDuration) ease-in-out;
}
body.sidebar-closed .sidebar {
left: calc(-1 * var(--sidebarWidth));
display: none;
}
body.sidebar-closed .content {
width: 100%;
left: 0;
}
@media screen and (max-width: 768px) {
.content,
body.sidebar-opening .content {
left: 0;
width: 100%;
}
body.sidebar-closed .sidebar-button {
position: absolute;
}
}
|