/**=====================
breakpoint mixins scss
==========================**/
// min width
@mixin mq-min($breakpoint) {
@if map-has-key($min-breakpoints, $breakpoint) {
$breakpoint-value: map-get($min-breakpoints, $breakpoint);
@media (min-width: $breakpoint-value) {
@content;
}
}
@else {
@warn 'Invalid breakpoint: #{$breakpoint}.';
}
}
// max width
@mixin mq-max($breakpoint) {
@if map-has-key($max-breakpoints, $breakpoint) {
$breakpoint-value: map-get($max-breakpoints, $breakpoint);
@media (max-width: ($breakpoint-value)) {
@content;
}
}
@else {
@warn 'Invalid breakpoint: #{$breakpoint}.';
}
}
// min and max
@mixin mq-between($lower, $upper) {
@if map-has-key($max-breakpoints, $lower) and map-has-key($min-breakpoints, $upper) {
$lower-breakpoint: map-get($max-breakpoints, $lower);
$upper-breakpoint: map-get($min-breakpoints, $upper);
@media (min-width: $lower-breakpoint) and (max-width: ($upper-breakpoint - 1)) {
@content;
}
}
@else {
@if (map-has-key($max-breakpoints, $lower)==false) {
@warn 'Your lower breakpoint was invalid: #{$lower}.';
}
@if (map-has-key($min-breakpoints, $upper)==false) {
@warn 'Your upper breakpoint was invalid: #{$upper}.';
}
}
} |