Skip to content

Instantly share code, notes, and snippets.

View claudia-romano's full-sized avatar

Claudia Romano claudia-romano

View GitHub Profile
@media only screen and (min-width: 600px) {
@for $i from 1 through $grid-columns {
.col--md-#{$i} {
flex-basis: round-width($i);
max-width: round-width($i);
}
}
}
@function round-width ($i) {
$width : floor(100 * $i * 100/ $grid-columns) / 100;
@return $width#{"%"};
}
$grid-columns: 12;
@for $i from 1 through $grid-columns {
.col--#{$i} {
flex-basis: round-width($i);
max-width: round-width($i);
}
}
.col {
padding: calc(var(--grid-gap)) 0 0 calc(var(--grid-gap));
background-clip: content-box;
flex-basis: 100%;
}
.flex-grid {
display: flex;
flex-wrap: wrap;
margin: calc(var(--grid-gap) * -1) 0 0 calc(var(--grid-gap) * -1);
}
:root {
--grid-gap: 10px;
}
@mixin gridAuto($min-width, $fallback: 3) {
> * {
float: left;
width: calc(100%/#{$fallback} - #{$gap-horizontal});
&:nth-child(#{$fallback}n + 1) {
clear: both;
}
}
$gap-horizontal: 10px;
$gap-vertical: $gap-horizontal;
@mixin grid {
// fallback for IE
&::before, &::after {
content: '';
display: table;
}
@mixin gridAuto($min-width) {
@supports(grid-area: auto) {
grid-template-columns: repeat(auto-fit, minmax($min-width, 1fr));
}
}
$gap-horizontal: 10px;
$gap-vertical: $gap-horizontal;
@mixin grid {
@supports(grid-area: auto) {
display: grid;
grid-column-gap: $gap-horizontal;
grid-row-gap: $gap-vertical;
}
}