sogo/UI/WebServerResources/scss/core/mixins.scss
2015-06-12 11:59:02 -04:00

60 lines
1.8 KiB
SCSS

/// mixins.scss -*- Mode: scss; indent-tabs-mode: nil; basic-offset: 2 -*-
@import '../../angular-material/src/core/style/mixins.scss';
@mixin margin-selectors($before:1em, $after:1em, $start:0px, $end:0px) {
-webkit-margin-before: $before;
-webkit-margin-after: $after;
-webkit-margin-start: $start;
-webkit-margin-end: $end;
}
@mixin not-selectable($value:none) {
user-select: $value;
}
@mixin input-placeholder-color($color) {
&::-webkit-input-placeholder,
&::-moz-placeholder, /* Firefox 19+ */
&:-moz-placeholder, /* Firefox 18- */
&:-ms-input-placeholder {
color: $color;
}
}
// Utility to compensate for the the xml mandatory attribute values
// Creates classes extending layout attributes with no values
// ----------------------------------------------------------------
@mixin attributesToClasses($selectors, $prefix: 'md') {
@each $selector in $selectors {
.#{$prefix}-#{$selector} {
// no syntax error here
@extend #{'['$selector']'} !optional
}
}
}
// Migration functions to mimic the
// Compass extension "Breakpoint Slicer" (https://github.com/lolmaus/breakpoint-slicer)
// using "Breakpoint" (https://github.com/at-import/breakpoint)
@mixin at($breakpoint) {
$min_idx: index($slicer-breakpoint-names, $breakpoint);
$min: nth($slicer-breakpoints, $min_idx) + 1;
$max: nth($slicer-breakpoints, $min_idx + 1);
@include breakpoint($min $max) {
@content;
}
}
@mixin from($breakpoint) {
$min_idx: index($slicer-breakpoint-names, $breakpoint);
$min: nth($slicer-breakpoints, $min_idx) + 1;
@include breakpoint($min) {
@content;
}
}
@mixin to($breakpoint) {
$max_idx: index($slicer-breakpoint-names, $breakpoint);
$max: nth($slicer-breakpoints, $max_idx + 1);
@include breakpoint('max-width' $max) {
@content;
}
}