You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
83 lines
1.9 KiB
SCSS
83 lines
1.9 KiB
SCSS
// A map of breakpoints.
|
|
$breakpoints: (
|
|
xs: 576px,
|
|
sm: 768px,
|
|
md: 992px,
|
|
lg: 1200px
|
|
);
|
|
|
|
// Respond above.
|
|
@mixin respond-above($breakpoint) {
|
|
|
|
// If the breakpoint exists in the map.
|
|
@if map-has-key($breakpoints, $breakpoint) {
|
|
|
|
// Get the breakpoint value.
|
|
$breakpoint-value: map-get($breakpoints, $breakpoint);
|
|
|
|
// Write the media query.
|
|
@media (min-width: $breakpoint-value) {
|
|
@content;
|
|
}
|
|
|
|
// If the breakpoint doesn't exist in the map.
|
|
} @else {
|
|
|
|
// Log a warning.
|
|
@warn 'Invalid breakpoint: #{$breakpoint}.';
|
|
}
|
|
}
|
|
|
|
@mixin respond-below($breakpoint) {
|
|
|
|
// If the breakpoint exists in the map.
|
|
@if map-has-key($breakpoints, $breakpoint) {
|
|
|
|
// Get the breakpoint value.
|
|
$breakpoint-value: map-get($breakpoints, $breakpoint);
|
|
|
|
// Write the media query.
|
|
@media (max-width: ($breakpoint-value - 1)) {
|
|
@content;
|
|
}
|
|
|
|
// If the breakpoint doesn't exist in the map.
|
|
} @else {
|
|
|
|
// Log a warning.
|
|
@warn 'Invalid breakpoint: #{$breakpoint}.';
|
|
}
|
|
}
|
|
|
|
@mixin respond-between($lower, $upper) {
|
|
|
|
// If both the lower and upper breakpoints exist in the map.
|
|
@if map-has-key($breakpoints, $lower) and map-has-key($breakpoints, $upper) {
|
|
|
|
// Get the lower and upper breakpoints.
|
|
$lower-breakpoint: map-get($breakpoints, $lower);
|
|
$upper-breakpoint: map-get($breakpoints, $upper);
|
|
|
|
// Write the media query.
|
|
@media (min-width: $lower-breakpoint) and (max-width: ($upper-breakpoint - 1)) {
|
|
@content;
|
|
}
|
|
|
|
// If one or both of the breakpoints don't exist.
|
|
} @else {
|
|
|
|
// If lower breakpoint is invalid.
|
|
@if (map-has-key($breakpoints, $lower) == false) {
|
|
|
|
// Log a warning.
|
|
@warn 'Your lower breakpoint was invalid: #{$lower}.';
|
|
}
|
|
|
|
// If upper breakpoint is invalid.
|
|
@if (map-has-key($breakpoints, $upper) == false) {
|
|
|
|
// Log a warning.
|
|
@warn 'Your upper breakpoint was invalid: #{$upper}.';
|
|
}
|
|
}
|
|
} |