]> BookStack Code Mirror - bookstack/blob - resources/assets/sass/_grid.scss
Added migration file.
[bookstack] / resources / assets / sass / _grid.scss
1
2 /** Flexbox styling rules **/
3 body.flexbox {
4   display: flex;
5   flex-direction: column;
6   align-items: stretch;
7   height: 100%;
8   min-height: 100%;
9   max-height: 100%;
10   overflow: hidden;
11   #content {
12     flex: 1;
13     display: flex;
14     min-height: 0;
15   }
16 }
17
18 .flex-fill {
19   display: flex;
20   align-items: stretch;
21   min-height: 0;
22   position: relative;
23   &.rows {
24     flex-direction: row;
25   }
26   &.columns {
27     flex-direction: column;
28   }
29 }
30
31 .flex {
32   min-height: 0;
33   flex: 1;
34 }
35
36 .flex.scroll {
37   //overflow-y: auto;
38   display: flex;
39   &.sidebar {
40     margin-right: -14px;
41   }
42 }
43 .flex.scroll .scroll-body {
44   overflow-y: scroll;
45   flex: 1;
46 }
47
48 .flex-child > div {
49   flex: 1;
50 }
51
52 .flex.sidebar {
53   flex: 1;
54   background-color: #F2F2F2;
55   max-width: 360px;
56   min-height: 90vh;
57 }
58 .flex.sidebar + .flex.content {
59   flex: 3;
60   background-color: #FFFFFF;
61   padding: 0 $-l;
62   border-left: 1px solid #DDD;
63   max-width: 100%;
64 }
65 .flex.sidebar .sidebar-toggle {
66   display: none;
67 }
68
69 @include smaller-than($xl) {
70   body.sidebar-layout {
71     padding-left: 30px;
72   }
73   .flex.sidebar {
74     position: fixed;
75     top: 0;
76     left: 0;
77     bottom: 0;
78     z-index: 100;
79     padding-right: 30px;
80     width: 360px;
81     box-shadow: none;
82     transform: translate3d(-330px, 0, 0);
83     transition: transform ease-in-out 120ms;
84   }
85   .flex.sidebar.open {
86     box-shadow: 1px 2px 2px 1px rgba(0,0,0,.10);
87     transform: translate3d(0, 0, 0);
88     .sidebar-toggle i {
89       transform: rotate(180deg);
90     }
91   }
92   .flex.sidebar .sidebar-toggle {
93     display: block;
94     position: absolute;
95     opacity: 0.9;
96     right: 0;
97     top: 0;
98     bottom: 0;
99     width: 30px;
100     color: #666;
101     font-size: 20px;
102     vertical-align: middle;
103     text-align: center;
104     border: 1px solid #DDD;
105     border-top: 1px solid #BBB;
106     padding-top: $-m;
107     cursor: pointer;
108     i {
109       opacity: 0.5;
110       transition: all ease-in-out 120ms;
111       padding: 0;
112     }
113     &:hover i {
114       opacity: 1;
115     }
116   }
117   #sidebar .scroll-body.fixed {
118     width: auto !important;
119   }
120 }
121
122 @include larger-than($xl) {
123   #sidebar .scroll-body.fixed {
124     z-index: 5;
125     position: fixed;
126     top: 0;
127     padding-right: $-m;
128     width: 30%;
129     left: 0;
130     height: 100%;
131     overflow-y: scroll;
132     -ms-overflow-style: none;
133     //background-color: $primary-faded;
134     border-left: 1px solid #DDD;
135     &::-webkit-scrollbar { width: 0 !important }
136   }
137 }
138
139
140 /** Rules for all columns */
141 div[class^="col-"] img {
142   max-width: 100%;
143 }
144
145 .container {
146   max-width: $max-width;
147   margin-left: auto;
148   margin-right: auto;
149   padding-left: $-m;
150   padding-right: $-m;
151   &.fluid {
152     max-width: 100%;
153   }
154   &.medium {
155     max-width: 992px;
156   }
157   &.small {
158     max-width: 840px;
159   }
160 }
161
162 .row {
163   margin-left: -$-m;
164   margin-right: -$-m;
165 }
166
167 .float {
168   float: left;
169   &.right {
170     float: right;
171   }
172 }
173
174 .block {
175   display: block;
176   position: relative;
177 }
178
179 .inline {
180   display: inline;
181 }
182
183 .block.inline {
184   display: inline-block;
185 }
186
187 .col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
188   position: relative;
189   min-height: 1px;
190   padding-left: $-m;
191   padding-right: $-m;
192 }
193 .col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {
194   float: left;
195 }
196 .col-xs-12 {
197   width: 100%;
198 }
199 .col-xs-11 {
200   width: 91.66666667%;
201 }
202 .col-xs-10 {
203   width: 83.33333333%;
204 }
205 .col-xs-9 {
206   width: 75%;
207 }
208 .col-xs-8 {
209   width: 66.66666667%;
210 }
211 .col-xs-7 {
212   width: 58.33333333%;
213 }
214 .col-xs-6 {
215   width: 50%;
216 }
217 .col-xs-5 {
218   width: 41.66666667%;
219 }
220 .col-xs-4 {
221   width: 33.33333333%;
222 }
223 .col-xs-3 {
224   width: 25%;
225 }
226 .col-xs-2 {
227   width: 16.66666667%;
228 }
229 .col-xs-1 {
230   width: 8.33333333%;
231 }
232 .col-xs-pull-12 {
233   right: 100%;
234 }
235 .col-xs-pull-11 {
236   right: 91.66666667%;
237 }
238 .col-xs-pull-10 {
239   right: 83.33333333%;
240 }
241 .col-xs-pull-9 {
242   right: 75%;
243 }
244 .col-xs-pull-8 {
245   right: 66.66666667%;
246 }
247 .col-xs-pull-7 {
248   right: 58.33333333%;
249 }
250 .col-xs-pull-6 {
251   right: 50%;
252 }
253 .col-xs-pull-5 {
254   right: 41.66666667%;
255 }
256 .col-xs-pull-4 {
257   right: 33.33333333%;
258 }
259 .col-xs-pull-3 {
260   right: 25%;
261 }
262 .col-xs-pull-2 {
263   right: 16.66666667%;
264 }
265 .col-xs-pull-1 {
266   right: 8.33333333%;
267 }
268 .col-xs-pull-0 {
269   right: auto;
270 }
271 .col-xs-push-12 {
272   left: 100%;
273 }
274 .col-xs-push-11 {
275   left: 91.66666667%;
276 }
277 .col-xs-push-10 {
278   left: 83.33333333%;
279 }
280 .col-xs-push-9 {
281   left: 75%;
282 }
283 .col-xs-push-8 {
284   left: 66.66666667%;
285 }
286 .col-xs-push-7 {
287   left: 58.33333333%;
288 }
289 .col-xs-push-6 {
290   left: 50%;
291 }
292 .col-xs-push-5 {
293   left: 41.66666667%;
294 }
295 .col-xs-push-4 {
296   left: 33.33333333%;
297 }
298 .col-xs-push-3 {
299   left: 25%;
300 }
301 .col-xs-push-2 {
302   left: 16.66666667%;
303 }
304 .col-xs-push-1 {
305   left: 8.33333333%;
306 }
307 .col-xs-push-0 {
308   left: auto;
309 }
310 .col-xs-offset-12 {
311   margin-left: 100%;
312 }
313 .col-xs-offset-11 {
314   margin-left: 91.66666667%;
315 }
316 .col-xs-offset-10 {
317   margin-left: 83.33333333%;
318 }
319 .col-xs-offset-9 {
320   margin-left: 75%;
321 }
322 .col-xs-offset-8 {
323   margin-left: 66.66666667%;
324 }
325 .col-xs-offset-7 {
326   margin-left: 58.33333333%;
327 }
328 .col-xs-offset-6 {
329   margin-left: 50%;
330 }
331 .col-xs-offset-5 {
332   margin-left: 41.66666667%;
333 }
334 .col-xs-offset-4 {
335   margin-left: 33.33333333%;
336 }
337 .col-xs-offset-3 {
338   margin-left: 25%;
339 }
340 .col-xs-offset-2 {
341   margin-left: 16.66666667%;
342 }
343 .col-xs-offset-1 {
344   margin-left: 8.33333333%;
345 }
346 .col-xs-offset-0 {
347   margin-left: 0%;
348 }
349 @media (min-width: $screen-sm) {
350   .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
351     float: left;
352   }
353   .col-sm-12 {
354     width: 100%;
355   }
356   .col-sm-11 {
357     width: 91.66666667%;
358   }
359   .col-sm-10 {
360     width: 83.33333333%;
361   }
362   .col-sm-9 {
363     width: 75%;
364   }
365   .col-sm-8 {
366     width: 66.66666667%;
367   }
368   .col-sm-7 {
369     width: 58.33333333%;
370   }
371   .col-sm-6 {
372     width: 50%;
373   }
374   .col-sm-5 {
375     width: 41.66666667%;
376   }
377   .col-sm-4 {
378     width: 33.33333333%;
379   }
380   .col-sm-3 {
381     width: 25%;
382   }
383   .col-sm-2 {
384     width: 16.66666667%;
385   }
386   .col-sm-1 {
387     width: 8.33333333%;
388   }
389   .col-sm-pull-12 {
390     right: 100%;
391   }
392   .col-sm-pull-11 {
393     right: 91.66666667%;
394   }
395   .col-sm-pull-10 {
396     right: 83.33333333%;
397   }
398   .col-sm-pull-9 {
399     right: 75%;
400   }
401   .col-sm-pull-8 {
402     right: 66.66666667%;
403   }
404   .col-sm-pull-7 {
405     right: 58.33333333%;
406   }
407   .col-sm-pull-6 {
408     right: 50%;
409   }
410   .col-sm-pull-5 {
411     right: 41.66666667%;
412   }
413   .col-sm-pull-4 {
414     right: 33.33333333%;
415   }
416   .col-sm-pull-3 {
417     right: 25%;
418   }
419   .col-sm-pull-2 {
420     right: 16.66666667%;
421   }
422   .col-sm-pull-1 {
423     right: 8.33333333%;
424   }
425   .col-sm-pull-0 {
426     right: auto;
427   }
428   .col-sm-push-12 {
429     left: 100%;
430   }
431   .col-sm-push-11 {
432     left: 91.66666667%;
433   }
434   .col-sm-push-10 {
435     left: 83.33333333%;
436   }
437   .col-sm-push-9 {
438     left: 75%;
439   }
440   .col-sm-push-8 {
441     left: 66.66666667%;
442   }
443   .col-sm-push-7 {
444     left: 58.33333333%;
445   }
446   .col-sm-push-6 {
447     left: 50%;
448   }
449   .col-sm-push-5 {
450     left: 41.66666667%;
451   }
452   .col-sm-push-4 {
453     left: 33.33333333%;
454   }
455   .col-sm-push-3 {
456     left: 25%;
457   }
458   .col-sm-push-2 {
459     left: 16.66666667%;
460   }
461   .col-sm-push-1 {
462     left: 8.33333333%;
463   }
464   .col-sm-push-0 {
465     left: auto;
466   }
467   .col-sm-offset-12 {
468     margin-left: 100%;
469   }
470   .col-sm-offset-11 {
471     margin-left: 91.66666667%;
472   }
473   .col-sm-offset-10 {
474     margin-left: 83.33333333%;
475   }
476   .col-sm-offset-9 {
477     margin-left: 75%;
478   }
479   .col-sm-offset-8 {
480     margin-left: 66.66666667%;
481   }
482   .col-sm-offset-7 {
483     margin-left: 58.33333333%;
484   }
485   .col-sm-offset-6 {
486     margin-left: 50%;
487   }
488   .col-sm-offset-5 {
489     margin-left: 41.66666667%;
490   }
491   .col-sm-offset-4 {
492     margin-left: 33.33333333%;
493   }
494   .col-sm-offset-3 {
495     margin-left: 25%;
496   }
497   .col-sm-offset-2 {
498     margin-left: 16.66666667%;
499   }
500   .col-sm-offset-1 {
501     margin-left: 8.33333333%;
502   }
503   .col-sm-offset-0 {
504     margin-left: 0%;
505   }
506 }
507 @media (min-width: $screen-md) {
508   .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {
509     float: left;
510   }
511   .col-md-12 {
512     width: 100%;
513   }
514   .col-md-11 {
515     width: 91.66666667%;
516   }
517   .col-md-10 {
518     width: 83.33333333%;
519   }
520   .col-md-9 {
521     width: 75%;
522   }
523   .col-md-8 {
524     width: 66.66666667%;
525   }
526   .col-md-7 {
527     width: 58.33333333%;
528   }
529   .col-md-6 {
530     width: 50%;
531   }
532   .col-md-5 {
533     width: 41.66666667%;
534   }
535   .col-md-4 {
536     width: 33.33333333%;
537   }
538   .col-md-3 {
539     width: 25%;
540   }
541   .col-md-2 {
542     width: 16.66666667%;
543   }
544   .col-md-1 {
545     width: 8.33333333%;
546   }
547   .col-md-pull-12 {
548     right: 100%;
549   }
550   .col-md-pull-11 {
551     right: 91.66666667%;
552   }
553   .col-md-pull-10 {
554     right: 83.33333333%;
555   }
556   .col-md-pull-9 {
557     right: 75%;
558   }
559   .col-md-pull-8 {
560     right: 66.66666667%;
561   }
562   .col-md-pull-7 {
563     right: 58.33333333%;
564   }
565   .col-md-pull-6 {
566     right: 50%;
567   }
568   .col-md-pull-5 {
569     right: 41.66666667%;
570   }
571   .col-md-pull-4 {
572     right: 33.33333333%;
573   }
574   .col-md-pull-3 {
575     right: 25%;
576   }
577   .col-md-pull-2 {
578     right: 16.66666667%;
579   }
580   .col-md-pull-1 {
581     right: 8.33333333%;
582   }
583   .col-md-pull-0 {
584     right: auto;
585   }
586   .col-md-push-12 {
587     left: 100%;
588   }
589   .col-md-push-11 {
590     left: 91.66666667%;
591   }
592   .col-md-push-10 {
593     left: 83.33333333%;
594   }
595   .col-md-push-9 {
596     left: 75%;
597   }
598   .col-md-push-8 {
599     left: 66.66666667%;
600   }
601   .col-md-push-7 {
602     left: 58.33333333%;
603   }
604   .col-md-push-6 {
605     left: 50%;
606   }
607   .col-md-push-5 {
608     left: 41.66666667%;
609   }
610   .col-md-push-4 {
611     left: 33.33333333%;
612   }
613   .col-md-push-3 {
614     left: 25%;
615   }
616   .col-md-push-2 {
617     left: 16.66666667%;
618   }
619   .col-md-push-1 {
620     left: 8.33333333%;
621   }
622   .col-md-push-0 {
623     left: auto;
624   }
625   .col-md-offset-12 {
626     margin-left: 100%;
627   }
628   .col-md-offset-11 {
629     margin-left: 91.66666667%;
630   }
631   .col-md-offset-10 {
632     margin-left: 83.33333333%;
633   }
634   .col-md-offset-9 {
635     margin-left: 75%;
636   }
637   .col-md-offset-8 {
638     margin-left: 66.66666667%;
639   }
640   .col-md-offset-7 {
641     margin-left: 58.33333333%;
642   }
643   .col-md-offset-6 {
644     margin-left: 50%;
645   }
646   .col-md-offset-5 {
647     margin-left: 41.66666667%;
648   }
649   .col-md-offset-4 {
650     margin-left: 33.33333333%;
651   }
652   .col-md-offset-3 {
653     margin-left: 25%;
654   }
655   .col-md-offset-2 {
656     margin-left: 16.66666667%;
657   }
658   .col-md-offset-1 {
659     margin-left: 8.33333333%;
660   }
661   .col-md-offset-0 {
662     margin-left: 0%;
663   }
664 }
665 @media (min-width: $screen-lg) {
666   .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {
667     float: left;
668   }
669   .col-lg-12 {
670     width: 100%;
671   }
672   .col-lg-11 {
673     width: 91.66666667%;
674   }
675   .col-lg-10 {
676     width: 83.33333333%;
677   }
678   .col-lg-9 {
679     width: 75%;
680   }
681   .col-lg-8 {
682     width: 66.66666667%;
683   }
684   .col-lg-7 {
685     width: 58.33333333%;
686   }
687   .col-lg-6 {
688     width: 50%;
689   }
690   .col-lg-5 {
691     width: 41.66666667%;
692   }
693   .col-lg-4 {
694     width: 33.33333333%;
695   }
696   .col-lg-3 {
697     width: 25%;
698   }
699   .col-lg-2 {
700     width: 16.66666667%;
701   }
702   .col-lg-1 {
703     width: 8.33333333%;
704   }
705   .col-lg-pull-12 {
706     right: 100%;
707   }
708   .col-lg-pull-11 {
709     right: 91.66666667%;
710   }
711   .col-lg-pull-10 {
712     right: 83.33333333%;
713   }
714   .col-lg-pull-9 {
715     right: 75%;
716   }
717   .col-lg-pull-8 {
718     right: 66.66666667%;
719   }
720   .col-lg-pull-7 {
721     right: 58.33333333%;
722   }
723   .col-lg-pull-6 {
724     right: 50%;
725   }
726   .col-lg-pull-5 {
727     right: 41.66666667%;
728   }
729   .col-lg-pull-4 {
730     right: 33.33333333%;
731   }
732   .col-lg-pull-3 {
733     right: 25%;
734   }
735   .col-lg-pull-2 {
736     right: 16.66666667%;
737   }
738   .col-lg-pull-1 {
739     right: 8.33333333%;
740   }
741   .col-lg-pull-0 {
742     right: auto;
743   }
744   .col-lg-push-12 {
745     left: 100%;
746   }
747   .col-lg-push-11 {
748     left: 91.66666667%;
749   }
750   .col-lg-push-10 {
751     left: 83.33333333%;
752   }
753   .col-lg-push-9 {
754     left: 75%;
755   }
756   .col-lg-push-8 {
757     left: 66.66666667%;
758   }
759   .col-lg-push-7 {
760     left: 58.33333333%;
761   }
762   .col-lg-push-6 {
763     left: 50%;
764   }
765   .col-lg-push-5 {
766     left: 41.66666667%;
767   }
768   .col-lg-push-4 {
769     left: 33.33333333%;
770   }
771   .col-lg-push-3 {
772     left: 25%;
773   }
774   .col-lg-push-2 {
775     left: 16.66666667%;
776   }
777   .col-lg-push-1 {
778     left: 8.33333333%;
779   }
780   .col-lg-push-0 {
781     left: auto;
782   }
783   .col-lg-offset-12 {
784     margin-left: 100%;
785   }
786   .col-lg-offset-11 {
787     margin-left: 91.66666667%;
788   }
789   .col-lg-offset-10 {
790     margin-left: 83.33333333%;
791   }
792   .col-lg-offset-9 {
793     margin-left: 75%;
794   }
795   .col-lg-offset-8 {
796     margin-left: 66.66666667%;
797   }
798   .col-lg-offset-7 {
799     margin-left: 58.33333333%;
800   }
801   .col-lg-offset-6 {
802     margin-left: 50%;
803   }
804   .col-lg-offset-5 {
805     margin-left: 41.66666667%;
806   }
807   .col-lg-offset-4 {
808     margin-left: 33.33333333%;
809   }
810   .col-lg-offset-3 {
811     margin-left: 25%;
812   }
813   .col-lg-offset-2 {
814     margin-left: 16.66666667%;
815   }
816   .col-lg-offset-1 {
817     margin-left: 8.33333333%;
818   }
819   .col-lg-offset-0 {
820     margin-left: 0%;
821   }
822 }
823 .clearfix:before,
824 .clearfix:after,
825 .container:before,
826 .container:after,
827 .container-fluid:before,
828 .container-fluid:after,
829 .row:before,
830 .row:after {
831   content: " ";
832   display: table;
833 }
834 .clearfix:after,
835 .container:after,
836 .container-fluid:after,
837 .row:after {
838   clear: both;
839 }
840 .center-block {
841   display: block;
842   margin-left: auto;
843   margin-right: auto;
844 }