https://github.com/sha-red/compass-mixins/tree/master/lib
extended with more sass frameworks and as django app.
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
86 lines
1.8 KiB
86 lines
1.8 KiB
7 years ago
|
// Browser Support
|
||
|
// ===============
|
||
|
|
||
|
// Susy Support Defaults
|
||
|
// ---------------------
|
||
|
@include susy-defaults((
|
||
|
use-custom: (
|
||
|
clearfix: false,
|
||
|
background-image: true,
|
||
|
background-options: false,
|
||
|
breakpoint: true,
|
||
|
box-sizing: true,
|
||
|
rem: true,
|
||
|
),
|
||
|
));
|
||
|
|
||
|
|
||
|
// Susy Support [mixin]
|
||
|
// --------------------
|
||
|
// Send property-value pairs to the proper support modules.
|
||
|
// - $prop : <css property>
|
||
|
// - $val : <css value>
|
||
|
@mixin susy-support(
|
||
|
$prop,
|
||
|
$val
|
||
|
) {
|
||
|
// Background Support
|
||
|
@if $prop == background-image {
|
||
|
@include susy-background-image($val);
|
||
|
} @else if $prop == background-size {
|
||
|
@include susy-background-size($val);
|
||
|
} @else if $prop == background-origin {
|
||
|
@include susy-background-origin($val);
|
||
|
} @else if $prop == background-clip {
|
||
|
@include susy-background-clip($val);
|
||
|
}
|
||
|
|
||
|
// Box-Sizing Support
|
||
|
@else if $prop == box-sizing {
|
||
|
@include susy-box-sizing($val);
|
||
|
}
|
||
|
|
||
|
// Rem Support
|
||
|
@else {
|
||
|
@include susy-rem($prop, $val);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
// Susy Support [function]
|
||
|
// -----------------------
|
||
|
// Check for support of a feature.
|
||
|
// - $feature : <string>
|
||
|
// - e.g "rem" or "box-sizing"
|
||
|
// - $requirements : <map>
|
||
|
// - e.g (variable: rem-with-px-fallback, mixin: rem)
|
||
|
// - $warn : <bool>
|
||
|
@function susy-support(
|
||
|
$feature,
|
||
|
$requirements: (),
|
||
|
$warn: true
|
||
|
) {
|
||
|
$_support: susy-get(use-custom $feature);
|
||
|
|
||
|
@if $_support {
|
||
|
$_fail: false;
|
||
|
|
||
|
@each $_type, $_req in $requirements {
|
||
|
@each $_i in $_req {
|
||
|
$_pass: call(unquote("#{$_type}-exists"), $_i);
|
||
|
|
||
|
@if not($_pass) {
|
||
|
$_fail: true;
|
||
|
@if $warn {
|
||
|
@warn "You requested custom support of #{$feature}, but the #{$_i} #{$_type} is not available.";
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
$_support: if($_fail, false, $_support);
|
||
|
}
|
||
|
|
||
|
@return $_support;
|
||
|
}
|