/ docs / manual / _static / skeleton.css
skeleton.css
  1  /* Some sane resets. */
  2  html {
  3    height: 100%;
  4  }
  5  
  6  body {
  7    margin: 0;
  8    min-height: 100%;
  9  }
 10  
 11  /* All the flexbox magic! */
 12  body,
 13  .sb-announcement,
 14  .sb-content,
 15  .sb-main,
 16  .sb-container,
 17  .sb-container__inner,
 18  .sb-article-container,
 19  .sb-footer-content,
 20  .sb-header,
 21  .sb-header-secondary,
 22  .sb-footer {
 23    display: flex;
 24  }
 25  
 26  /* These order things vertically */
 27  body,
 28  .sb-main,
 29  .sb-article-container {
 30    flex-direction: column;
 31  }
 32  
 33  /* Put elements in the center */
 34  .sb-header,
 35  .sb-header-secondary,
 36  .sb-container,
 37  .sb-content,
 38  .sb-footer,
 39  .sb-footer-content {
 40    justify-content: center;
 41  }
 42  /* Put elements at the ends */
 43  .sb-article-container {
 44    justify-content: space-between;
 45  }
 46  
 47  /* These elements grow. */
 48  .sb-main,
 49  .sb-content,
 50  .sb-container,
 51  article {
 52    flex-grow: 1;
 53  }
 54  
 55  /* Because padding making this wider is not fun */
 56  article {
 57    box-sizing: border-box;
 58  }
 59  
 60  /* The announcements element should never be wider than the page. */
 61  .sb-announcement {
 62    max-width: 100%;
 63  }
 64  
 65  .sb-sidebar-primary,
 66  .sb-sidebar-secondary {
 67    flex-shrink: 0;
 68    width: 17rem;
 69  }
 70  
 71  .sb-announcement__inner {
 72    justify-content: center;
 73  
 74    box-sizing: border-box;
 75    height: 3rem;
 76  
 77    overflow-x: auto;
 78    white-space: nowrap;
 79  }
 80  
 81  /* Sidebars, with checkbox-based toggle */
 82  .sb-sidebar-primary,
 83  .sb-sidebar-secondary {
 84    position: fixed;
 85    height: 100%;
 86    top: 0;
 87  }
 88  
 89  .sb-sidebar-primary {
 90    left: -17rem;
 91    transition: left 250ms ease-in-out;
 92  }
 93  .sb-sidebar-secondary {
 94    right: -17rem;
 95    transition: right 250ms ease-in-out;
 96  }
 97  
 98  .sb-sidebar-toggle {
 99    display: none;
100  }
101  .sb-sidebar-overlay {
102    position: fixed;
103    top: 0;
104    width: 0;
105    height: 0;
106  
107    transition: width 0ms ease 250ms, height 0ms ease 250ms, opacity 250ms ease;
108  
109    opacity: 0;
110    background-color: rgba(0, 0, 0, 0.54);
111  }
112  
113  #sb-sidebar-toggle--primary:checked
114    ~ .sb-sidebar-overlay[for="sb-sidebar-toggle--primary"],
115  #sb-sidebar-toggle--secondary:checked
116    ~ .sb-sidebar-overlay[for="sb-sidebar-toggle--secondary"] {
117    width: 100%;
118    height: 100%;
119    opacity: 1;
120    transition: width 0ms ease, height 0ms ease, opacity 250ms ease;
121  }
122  
123  #sb-sidebar-toggle--primary:checked ~ .sb-container .sb-sidebar-primary {
124    left: 0;
125  }
126  #sb-sidebar-toggle--secondary:checked ~ .sb-container .sb-sidebar-secondary {
127    right: 0;
128  }
129  
130  /* Full-width mode */
131  .drop-secondary-sidebar-for-full-width-content
132    .hide-when-secondary-sidebar-shown {
133    display: none !important;
134  }
135  .drop-secondary-sidebar-for-full-width-content .sb-sidebar-secondary {
136    display: none !important;
137  }
138  
139  /* Mobile views */
140  .sb-page-width {
141    width: 100%;
142  }
143  
144  .sb-article-container,
145  .sb-footer-content__inner,
146  .drop-secondary-sidebar-for-full-width-content .sb-article,
147  .drop-secondary-sidebar-for-full-width-content .match-content-width {
148    width: 100vw;
149  }
150  
151  .sb-article,
152  .match-content-width {
153    padding: 0 1rem;
154    box-sizing: border-box;
155  }
156  
157  @media (min-width: 32rem) {
158    .sb-article,
159    .match-content-width {
160      padding: 0 2rem;
161    }
162  }
163  
164  /* Tablet views */
165  @media (min-width: 42rem) {
166    .sb-article-container {
167      width: auto;
168    }
169    .sb-footer-content__inner,
170    .drop-secondary-sidebar-for-full-width-content .sb-article,
171    .drop-secondary-sidebar-for-full-width-content .match-content-width {
172      width: 42rem;
173    }
174    .sb-article,
175    .match-content-width {
176      width: 42rem;
177    }
178  }
179  @media (min-width: 46rem) {
180    .sb-footer-content__inner,
181    .drop-secondary-sidebar-for-full-width-content .sb-article,
182    .drop-secondary-sidebar-for-full-width-content .match-content-width {
183      width: 46rem;
184    }
185    .sb-article,
186    .match-content-width {
187      width: 46rem;
188    }
189  }
190  @media (min-width: 50rem) {
191    .sb-footer-content__inner,
192    .drop-secondary-sidebar-for-full-width-content .sb-article,
193    .drop-secondary-sidebar-for-full-width-content .match-content-width {
194      width: 50rem;
195    }
196    .sb-article,
197    .match-content-width {
198      width: 50rem;
199    }
200  }
201  
202  /* Tablet views */
203  @media (min-width: 59rem) {
204    .sb-sidebar-secondary {
205      position: static;
206    }
207    .hide-when-secondary-sidebar-shown {
208      display: none !important;
209    }
210    .sb-footer-content__inner,
211    .drop-secondary-sidebar-for-full-width-content .sb-article,
212    .drop-secondary-sidebar-for-full-width-content .match-content-width {
213      width: 59rem;
214    }
215    .sb-article,
216    .match-content-width {
217      width: 42rem;
218    }
219  }
220  @media (min-width: 63rem) {
221    .sb-footer-content__inner,
222    .drop-secondary-sidebar-for-full-width-content .sb-article,
223    .drop-secondary-sidebar-for-full-width-content .match-content-width {
224      width: 63rem;
225    }
226    .sb-article,
227    .match-content-width {
228      width: 46rem;
229    }
230  }
231  @media (min-width: 67rem) {
232    .sb-footer-content__inner,
233    .drop-secondary-sidebar-for-full-width-content .sb-article,
234    .drop-secondary-sidebar-for-full-width-content .match-content-width {
235      width: 67rem;
236    }
237    .sb-article,
238    .match-content-width {
239      width: 50rem;
240    }
241  }
242  
243  /* Desktop views */
244  @media (min-width: 76rem) {
245    .sb-sidebar-primary {
246      position: static;
247    }
248    .hide-when-primary-sidebar-shown {
249      display: none !important;
250    }
251    .sb-footer-content__inner,
252    .drop-secondary-sidebar-for-full-width-content .sb-article,
253    .drop-secondary-sidebar-for-full-width-content .match-content-width {
254      width: 59rem;
255    }
256    .sb-article,
257    .match-content-width {
258      width: 42rem;
259    }
260  }
261  
262  /* Full desktop views */
263  @media (min-width: 80rem) {
264    .sb-article,
265    .match-content-width {
266      width: 46rem;
267    }
268    .sb-footer-content__inner,
269    .drop-secondary-sidebar-for-full-width-content .sb-article,
270    .drop-secondary-sidebar-for-full-width-content .match-content-width {
271      width: 63rem;
272    }
273  }
274  
275  @media (min-width: 84rem) {
276    .sb-article,
277    .match-content-width {
278      width: 50rem;
279    }
280    .sb-footer-content__inner,
281    .drop-secondary-sidebar-for-full-width-content .sb-article,
282    .drop-secondary-sidebar-for-full-width-content .match-content-width {
283      width: 67rem;
284    }
285  }
286  
287  @media (min-width: 88rem) {
288    .sb-footer-content__inner,
289    .drop-secondary-sidebar-for-full-width-content .sb-article,
290    .drop-secondary-sidebar-for-full-width-content .match-content-width {
291      width: 67rem;
292    }
293    .sb-page-width {
294      width: 88rem;
295    }
296  }