Referenced in font-size.
/* -----------------------------------------------------------------------
/* Font sizes
/* -------------------------------------------------------------------- */
@mixin font-size-single( $size, $parent: null, $important: null ) {
$size : px($size);
$parent : px($parent);
$size_new : null;
@if ($parent != null) {
$size_new : $size / $parent;
}
@else {
$size_new : $size / 16px;
}
$important-added : "";
@if ( $important != null ) {
$important-added : "!important";
}
font-size : $size #{$important-added};
font-size : em($size_new) #{$important-added};
} // font-size-single
@mixin font-size( $max, $important: null, $max-parent: null, $min-parent: null, $min: null ) {
// sort correct units
// max
$max-px : px( $max );
$max-em : em( $max );
$max-unitless : nounit( px( $max-px ) );
// min - unique font-size
$min-px : px( $p_size_mobile );
$min-em : em( $p_size_mobile );
$min-unitless : nounit( px( $min-px ) );
// min
@if ( $min != null ) {
$min-px : px( $min );
$min-em : em( $min );
$min-unitless : nounit( px( $min-px ) );
}
// fix parent
@if( $max-parent != null ) {
$min-em : em( $min-px / $max-parent );
}
// media size
$min_vw-px : px( $mobile );
$min_vw-em : em( $mobile );
$min_vw-unitless : nounit( px( $mobile ) );
// media size
$max_vw-px : px( $desktop );
$max_vw-em : em( $desktop );
$max_vw-unitless : nounit( px( $desktop ) );
$maxmax_vw-em : em( $max-desktop );
$maxmax_vw-unitless : nounit( px( $max-desktop ) );
$important-added : "";
@if ( $important != null ) {
$important-added : "!important";
}
@include font-size-single( $min-px, $min-parent, $important );
@media ( min-width: #{$min_vw-em} ) and ( max-width: #{$maxmax_vw-em} ) {
font-size: calc( #{$min-em} + (#{$max-unitless} - #{$min-unitless}) * ( (100vw - #{$min_vw-px}) / ( #{$maxmax_vw-unitless} - #{$min_vw-unitless}) ) ) #{$important-added};
font-size: -moz-calc( #{$min-em} + (#{$max-unitless} - #{$min-unitless}) * ( (100vw - #{$min_vw-px}) / ( #{$maxmax_vw-unitless} - #{$min_vw-unitless}) ) ) #{$important-added};
font-size: -webkit-calc( #{$min-em} + (#{$max-unitless} - #{$min-unitless}) * ( (100vw - #{$min_vw-px}) / ( #{$maxmax_vw-unitless} - #{$min_vw-unitless}) ) ) #{$important-added};
}
@media ( min-width: #{$max_vw-em} ) {
@include font-size-single( $max-px, $max-parent, $important );
}
} // font-size