fix: add SASS div method fallback

This commit is contained in:
Sam Potts 2021-09-29 21:42:41 +10:00
parent 1c33098c42
commit 720cddff21
6 changed files with 31 additions and 10 deletions

View File

@ -19,5 +19,5 @@ label svg {
a .icon, a .icon,
.btn .icon { .btn .icon {
margin-right: ($spacing-base / 2); margin-right: div($spacing-base, 2);
} }

View File

@ -31,6 +31,6 @@
color: $color-gray-500; color: $color-gray-500;
.icon { .icon {
margin-right: ceil($spacing-base / 6); margin-right: div($spacing-base, 6);
} }
} }

View File

@ -46,7 +46,7 @@ aside {
.icon { .icon {
fill: $color-twitter; fill: $color-twitter;
margin-right: ($spacing-base / 2); margin-right: div($spacing-base, 2);
} }
p { p {

View File

@ -32,7 +32,7 @@
// Leave <body> at 100%/16px // Leave <body> at 100%/16px
// --------------------------------------- // ---------------------------------------
@function calculate-rem($size) { @function calculate-rem($size) {
$rem: $size / 16; $rem: div($size, 16);
@return #{$rem}rem; @return #{$rem}rem;
} }

View File

@ -1,7 +1,29 @@
// ========================================================================== @use 'sass:math';
// Useful functions @use 'sass:meta';
// ========================================================================== @use 'sass:list';
@function to-percentage($input) { @function to-percentage($input) {
@return $input * 1%; @return $input * 1%;
} }
// Private polyfill for the `math.div` function from Sass to be used until we can update the
// minimum required Sass version to 1.34.0 or above.
// TODO: replace with `math.div` eventually.
@function div($a, $b) {
@if (meta.function-exists('div', 'math')) {
@return math.div($a, $b);
} @else {
@return $a / $b;
}
}
// Private polyfill for the `list.slash` function from Sass to be used until we can update the
// minimum required Sass version to 1.34.0 or above.
// TODO: replace with `list.slash` eventually.
@function slash($a, $b) {
@if (meta.function-exists('slash', 'list')) {
@return list.slash($a, $b);
} @else {
@return #{$a}#{' / '}#{$b};
}
}

View File

@ -21,11 +21,10 @@
overflow: hidden; overflow: hidden;
position: relative; position: relative;
width: 100%; width: 100%;
height: 100%;
} }
// Default to 16:9 ratio but this is set by JavaScript based on config // Default to 16:9 ratio but this is set by JavaScript based on config
$embed-padding: (math.div(100, 16) * 9); $embed-padding: (div(100, 16) * 9);
.plyr__video-embed, .plyr__video-embed,
.plyr__video-wrapper--fixed-ratio { .plyr__video-wrapper--fixed-ratio {
@ -51,7 +50,7 @@ $embed-padding: (math.div(100, 16) * 9);
// For Vimeo, if the full custom UI is supported // For Vimeo, if the full custom UI is supported
.plyr--full-ui .plyr__video-embed > .plyr__video-embed__container { .plyr--full-ui .plyr__video-embed > .plyr__video-embed__container {
$height: 240; $height: 240;
$offset: to-percentage(math.div($height - $embed-padding, math.div($height, 50))); $offset: to-percentage(div($height - $embed-padding, div($height, 50)));
padding-bottom: to-percentage($height); padding-bottom: to-percentage($height);
position: relative; position: relative;
transform: translateY(-$offset); transform: translateY(-$offset);