wikijs-fork/client/scss/components/grid.scss

502 lines
6.8 KiB
SCSS
Raw Normal View History

2017-04-02 23:56:47 +00:00
.column {
flex-basis: 0;
flex-grow: 1;
flex-shrink: 1;
padding: 10px;
.columns.is-mobile > &.is-narrow {
flex: none;
}
.columns.is-mobile > &.is-full {
flex: none;
width: 100%;
}
.columns.is-mobile > &.is-three-quarters {
flex: none;
width: 75%;
}
.columns.is-mobile > &.is-two-thirds {
flex: none;
width: 66.6666%;
}
.columns.is-mobile > &.is-half {
flex: none;
width: 50%;
}
.columns.is-mobile > &.is-one-third {
flex: none;
width: 33.3333%;
}
.columns.is-mobile > &.is-one-quarter {
flex: none;
width: 25%;
}
.columns.is-mobile > &.is-offset-three-quarters {
margin-left: 75%;
}
.columns.is-mobile > &.is-offset-two-thirds {
margin-left: 66.6666%;
}
.columns.is-mobile > &.is-offset-half {
margin-left: 50%;
}
.columns.is-mobile > &.is-offset-one-third {
margin-left: 33.3333%;
}
.columns.is-mobile > &.is-offset-one-quarter {
margin-left: 25%;
}
@for $i from 1 through 12 {
.columns.is-mobile > &.is-#{$i} {
flex: none;
width: $i / 12 * 100%;
}
.columns.is-mobile > &.is-offset-#{$i} {
margin-left: $i / 12 * 100%;
}
}
@include mobile {
&.is-narrow-mobile {
flex: none;
}
&.is-full-mobile {
flex: none;
width: 100%;
}
&.is-three-quarters-mobile {
flex: none;
width: 75%;
}
&.is-two-thirds-mobile {
flex: none;
width: 66.6666%;
}
&.is-half-mobile {
flex: none;
width: 50%;
}
&.is-one-third-mobile {
flex: none;
width: 33.3333%;
}
&.is-one-quarter-mobile {
flex: none;
width: 25%;
}
&.is-offset-three-quarters-mobile {
margin-left: 75%;
}
&.is-offset-two-thirds-mobile {
margin-left: 66.6666%;
}
&.is-offset-half-mobile {
margin-left: 50%;
}
&.is-offset-one-third-mobile {
margin-left: 33.3333%;
}
&.is-offset-one-quarter-mobile {
margin-left: 25%;
}
@for $i from 1 through 12 {
&.is-#{$i}-mobile {
flex: none;
width: $i / 12 * 100%;
}
&.is-offset-#{$i}-mobile {
margin-left: $i / 12 * 100%;
}
}
}
@include tablet {
&.is-narrow,
&.is-narrow-tablet {
flex: none;
}
&.is-full,
&.is-full-tablet {
flex: none;
width: 100%;
}
&.is-three-quarters,
&.is-three-quarters-tablet {
flex: none;
width: 75%;
}
&.is-two-thirds,
&.is-two-thirds-tablet {
flex: none;
width: 66.6666%;
}
&.is-half,
&.is-half-tablet {
flex: none;
width: 50%;
}
&.is-one-third,
&.is-one-third-tablet {
flex: none;
width: 33.3333%;
}
&.is-one-quarter,
&.is-one-quarter-tablet {
flex: none;
width: 25%;
}
&.is-offset-three-quarters,
&.is-offset-three-quarters-tablet {
margin-left: 75%;
}
&.is-offset-two-thirds,
&.is-offset-two-thirds-tablet {
margin-left: 66.6666%;
}
&.is-offset-half,
&.is-offset-half-tablet {
margin-left: 50%;
}
&.is-offset-one-third,
&.is-offset-one-third-tablet {
margin-left: 33.3333%;
}
&.is-offset-one-quarter,
&.is-offset-one-quarter-tablet {
margin-left: 25%;
}
@for $i from 1 through 12 {
&.is-#{$i},
&.is-#{$i}-tablet {
flex: none;
width: $i / 12 * 100%;
}
&.is-offset-#{$i},
&.is-offset-#{$i}-tablet {
margin-left: $i / 12 * 100%;
}
}
}
@include desktop {
&.is-narrow-desktop {
flex: none;
}
&.is-full-desktop {
flex: none;
width: 100%;
}
&.is-three-quarters-desktop {
flex: none;
width: 75%;
}
&.is-two-thirds-desktop {
flex: none;
width: 66.6666%;
}
&.is-half-desktop {
flex: none;
width: 50%;
}
&.is-one-third-desktop {
flex: none;
width: 33.3333%;
}
&.is-one-quarter-desktop {
flex: none;
width: 25%;
}
&.is-offset-three-quarters-desktop {
margin-left: 75%;
}
&.is-offset-two-thirds-desktop {
margin-left: 66.6666%;
}
&.is-offset-half-desktop {
margin-left: 50%;
}
&.is-offset-one-third-desktop {
margin-left: 33.3333%;
}
&.is-offset-one-quarter-desktop {
margin-left: 25%;
}
@for $i from 1 through 12 {
&.is-#{$i}-desktop {
flex: none;
width: $i / 12 * 100%;
}
&.is-offset-#{$i}-desktop {
margin-left: $i / 12 * 100%;
}
}
}
@include widescreen {
&.is-narrow-widescreen {
flex: none;
}
&.is-full-widescreen {
flex: none;
width: 100%;
}
&.is-three-quarters-widescreen {
flex: none;
width: 75%;
}
&.is-two-thirds-widescreen {
flex: none;
width: 66.6666%;
}
&.is-half-widescreen {
flex: none;
width: 50%;
}
&.is-one-third-widescreen {
flex: none;
width: 33.3333%;
}
&.is-one-quarter-widescreen {
flex: none;
width: 25%;
}
&.is-offset-three-quarters-widescreen {
margin-left: 75%;
}
&.is-offset-two-thirds-widescreen {
margin-left: 66.6666%;
}
&.is-offset-half-widescreen {
margin-left: 50%;
}
&.is-offset-one-third-widescreen {
margin-left: 33.3333%;
}
&.is-offset-one-quarter-widescreen {
margin-left: 25%;
}
@for $i from 1 through 12 {
&.is-#{$i}-widescreen {
flex: none;
width: $i / 12 * 100%;
}
&.is-offset-#{$i}-widescreen {
margin-left: $i / 12 * 100%;
}
}
}
}
.columns {
margin-left: -10px;
margin-right: -10px;
margin-top: -10px;
&:last-child {
margin-bottom: -10px;
}
&:not(:last-child) {
margin-bottom: 10px;
}
// Modifiers
&.is-centered {
justify-content: center;
}
&.is-gapless {
margin-left: 0;
margin-right: 0;
margin-top: 0;
&:last-child {
margin-bottom: 0;
}
&:not(:last-child) {
margin-bottom: 20px;
}
& > .column {
margin: 0;
padding: 0;
}
}
&.is-stretched {
flex-grow: 1;
align-items: stretch;
align-self: stretch;
}
&.is-grid {
// Responsiveness
@include tablet {
flex-wrap: wrap;
& > .column {
max-width: 33.3333%;
padding: 10px;
width: 33.3333%;
& + .column {
margin-left: 0;
}
}
}
}
&.is-mobile {
display: flex;
}
&.is-multiline {
flex-wrap: wrap;
}
&.is-vcentered {
align-items: center;
}
// Responsiveness
@include tablet {
&:not(.is-desktop) {
display: flex;
}
}
@include desktop {
// Modifiers
&.is-desktop {
display: flex;
}
}
}
.tile {
align-items: stretch;
flex-basis: auto;
flex-grow: 1;
flex-shrink: 1;
min-height: min-content;
// Modifiers
&.is-ancestor {
margin-left: -10px;
margin-right: -10px;
margin-top: -10px;
&:last-child {
margin-bottom: -10px;
}
&:not(:last-child) {
margin-bottom: 10px;
}
}
&.is-child {
margin: 0 !important;
}
&.is-parent {
padding: 10px;
}
&.is-vertical {
flex-direction: column;
& > .tile.is-child:not(:last-child) {
margin-bottom: 20px !important;
}
}
// Responsiveness
@include tablet {
&:not(.is-child) {
display: flex;
}
@for $i from 1 through 12 {
&.is-#{$i} {
flex: none;
width: $i / 12 * 100%;
}
}
}
}
.column.is-white {
background-color: #FFF;
}