bootstrap-4-grid-styl
Version:
Bootstrap 4 grid system and layout utilities using Stylus
51 lines (40 loc) • 1.53 kB
text/stylus
/// Grid system
//
// Generate semantic grid columns with these mixins.
make-container()
width: 100%
padding-right: ($grid-gutter-width / 2)
padding-left: ($grid-gutter-width / 2)
margin-right: auto
margin-left: auto
// For each breakpoint, define the maximum width of the container in a media query
make-container-max-widths($max-widths = $container-max-widths, $breakpoints = $grid-breakpoints)
for $breakpoint, $container-max-width in $max-widths
+media-breakpoint-up($breakpoint, $breakpoints)
max-width: $container-max-width
make-row()
display: flex
flex-wrap: wrap
margin-right: ($grid-gutter-width / -2)
margin-left: ($grid-gutter-width / -2)
make-col-ready()
position: relative
// Prevent columns from becoming too narrow when at smaller grid tiers by
// always setting `width: 100%;`. This works because we use `flex` values
// later on to override this initial width.
width: 100%
min-height: 1px // Prevent collapsing
padding-right: ($grid-gutter-width / 2)
padding-left: ($grid-gutter-width / 2)
make-col($size, $columns = $grid-columns)
flex: 0 0 percentage($size / $columns)
// Add a `max-width` to ensure content within each column does not blow out
// the width of the column. Applies to IE10+ and Firefox. Chrome and Safari
// do not appear to require this.
max-width: percentage($size / $columns)
make-col-offset($size, $columns = $grid-columns)
$num = $size / $columns
if $num == 0
margin-left: 0
else
margin-left: percentage($num)