mirror of
https://github.com/bigchaindb/site.git
synced 2024-11-23 02:00:18 +01:00
270 lines
4.5 KiB
SCSS
270 lines
4.5 KiB
SCSS
//
|
|
// Grid
|
|
// --------------
|
|
// bigchaindb.com
|
|
//
|
|
// adapted from github.com/kremalicious/kremalicious3/blob/master/_src/_assets/styl/grid.styl
|
|
//
|
|
|
|
|
|
//
|
|
// More sane box model
|
|
//
|
|
*,
|
|
*:before,
|
|
*:after {
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
|
|
//
|
|
// Base
|
|
//
|
|
.grid {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
list-style: none;
|
|
margin: 0;
|
|
padding: 0;
|
|
}
|
|
|
|
.grid__col {
|
|
flex: 1;
|
|
// Firefox grid fix for whatever reason
|
|
min-height: 0;
|
|
min-width: 0;
|
|
}
|
|
|
|
.row {
|
|
max-width: calc(50em - #{$gutter-space * 2});
|
|
margin-left: auto;
|
|
margin-right: auto;
|
|
padding-left: ($gutter-space / 2);
|
|
padding-right: ($gutter-space / 2);
|
|
|
|
@media ($screen-sm) {
|
|
padding-left: $gutter-space;
|
|
padding-right: $gutter-space;
|
|
}
|
|
}
|
|
|
|
.row--wide {
|
|
max-width: 70rem;
|
|
}
|
|
|
|
.row--narrow {
|
|
max-width: ($screen-md-min / 1.75);
|
|
}
|
|
|
|
|
|
//
|
|
// Alignment per row
|
|
//
|
|
.grid--top {
|
|
align-items: flex-start;
|
|
}
|
|
|
|
.grid--bottom {
|
|
align-items: flex-end;
|
|
}
|
|
|
|
.grid--center {
|
|
align-items: center;
|
|
}
|
|
|
|
.grid--justifycenter {
|
|
justify-content: center;
|
|
}
|
|
|
|
|
|
//
|
|
// Alignment per cell
|
|
//
|
|
.grid__col--top {
|
|
align-self: flex-start;
|
|
}
|
|
|
|
.grid__col--bottom {
|
|
align-self: flex-end;
|
|
}
|
|
|
|
.grid__col--center {
|
|
align-self: center;
|
|
}
|
|
|
|
|
|
//
|
|
// Gutters
|
|
//
|
|
@mixin grid-gutters() {
|
|
margin: -($gutter-space) 0 $gutter-space (-($gutter-space));
|
|
|
|
> .grid__col {
|
|
padding: $gutter-space 0 0 $gutter-space;
|
|
}
|
|
}
|
|
|
|
@mixin grid-gutters-small() {
|
|
margin: -($gutter-space / 3) 0 $gutter-space / 3 (-($gutter-space / 3));
|
|
|
|
> .grid__col {
|
|
padding: $gutter-space / 3 0 0 $gutter-space / 3;
|
|
}
|
|
}
|
|
|
|
.grid--gutters {
|
|
@include grid-gutters();
|
|
}
|
|
|
|
.grid--gutters--small {
|
|
@include grid-gutters-small();
|
|
}
|
|
|
|
@media ($screen-sm) {
|
|
.grid-small--gutters {
|
|
@include grid-gutters();
|
|
}
|
|
|
|
.grid-small--gutters--small {
|
|
@include grid-gutters-small();
|
|
}
|
|
}
|
|
|
|
@media ($screen-md) {
|
|
.grid-medium--gutters {
|
|
@include grid-gutters();
|
|
}
|
|
|
|
.grid-medium--gutters--small {
|
|
@include grid-gutters-small();
|
|
}
|
|
}
|
|
|
|
@media ($screen-lg) {
|
|
.grid-large--gutters {
|
|
@include grid-gutters();
|
|
}
|
|
|
|
.grid-large--gutters--small {
|
|
@include grid-gutters-small();
|
|
}
|
|
}
|
|
|
|
|
|
//
|
|
// Columns
|
|
//
|
|
@mixin grid-columns() {
|
|
> .grid__col {
|
|
max-width: none;
|
|
|
|
&.grid__col--1 { flex: 0 0 16%; }
|
|
&.grid__col--2 { flex: 0 0 25%; }
|
|
&.grid__col--3 { flex: 0 0 50%; }
|
|
&.grid__col--4 { flex: 0 0 75%; }
|
|
&.grid__col--5 { flex: 0 0 84%; }
|
|
&.grid__col--6 { flex: 0 0 100%; }
|
|
|
|
&.grid__col--2-3 { flex: 0 0 (100% / 1.5); }
|
|
&.grid__col--1-3 { flex: 0 0 (100% / 3); }
|
|
}
|
|
}
|
|
|
|
.grid--fit {
|
|
> .grid__col { flex: 1; }
|
|
}
|
|
|
|
.grid--full {
|
|
> .grid__col { flex: 0 0 100%; }
|
|
}
|
|
|
|
.grid--third {
|
|
> .grid__col { flex: 0 0 33.3%; }
|
|
}
|
|
|
|
.grid--half {
|
|
> .grid__col {
|
|
flex: 0 0 50%;
|
|
max-width: 50%; // IE 11 workaround for bug (flex-basis doesn't account for box-sizing:border-box)
|
|
}
|
|
}
|
|
|
|
.grid--columns {
|
|
@include grid-columns();
|
|
}
|
|
|
|
@media ($screen-sm) {
|
|
.grid-small--columns {
|
|
@include grid-columns();
|
|
}
|
|
|
|
.grid-small--fit {
|
|
> .grid__col { flex: 1; }
|
|
}
|
|
|
|
.grid-small--full {
|
|
> .grid__col { flex: 0 0 100%; }
|
|
}
|
|
|
|
.grid-small--third {
|
|
> .grid__col { flex: 0 0 33.3%; }
|
|
}
|
|
|
|
.grid-small--half {
|
|
> .grid__col {
|
|
flex: 0 0 50%;
|
|
max-width: 50%; // IE 11 workaround for bug (flex-basis doesn't account for box-sizing:border-box)
|
|
}
|
|
}
|
|
}
|
|
|
|
@media ($screen-md) {
|
|
.grid-medium--columns {
|
|
@include grid-columns();
|
|
}
|
|
|
|
.grid-medium--fit {
|
|
> .grid__col { flex: 1; }
|
|
}
|
|
|
|
.grid-medium--full {
|
|
> .grid__col { flex: 0 0 100%; }
|
|
}
|
|
|
|
.grid-medium--third {
|
|
> .grid__col { flex: 0 0 33.3%; }
|
|
}
|
|
|
|
.grid-medium--half {
|
|
> .grid__col {
|
|
flex: 0 0 50%;
|
|
max-width: 50%; // IE 11 workaround for bug (flex-basis doesn't account for box-sizing:border-box)
|
|
}
|
|
}
|
|
}
|
|
|
|
@media ($screen-lg) {
|
|
.grid-large--columns {
|
|
@include grid-columns();
|
|
}
|
|
|
|
.grid-large--fit {
|
|
> .grid__col { flex: 1; }
|
|
}
|
|
|
|
.grid-large--full {
|
|
> .grid__col { flex: 0 0 100%; }
|
|
}
|
|
|
|
.grid-large--third {
|
|
> .grid__col { flex: 0 0 33.3%; }
|
|
}
|
|
|
|
.grid-large--half {
|
|
> .grid__col {
|
|
flex: 0 0 50%;
|
|
max-width: 50%; // IE 11 workaround for bug (flex-basis doesn't account for box-sizing:border-box)
|
|
}
|
|
}
|
|
}
|