//Media queries // Based on Rafal Bromirski Sass example - http://twitter.com/paranoida // //@variables // @mixin screen($resMin, $resMax) { @media #{$media-display} and (min-width: $resMin) and (max-width: $resMax) { @content; } } @mixin max-screen($res) { @media #{$media-display} and (max-width: $res) { @content; } } @mixin min-screen($res) { @media #{$media-display} and (min-width: $res) { @content; } } @mixin screen-height($resMin, $resMax) { @media #{$media-display} and (min-height: $resMin) and (max-height: $resMax) { @content; } } @mixin max-screen-height($res) { @media #{$media-display} and (max-height: $res) { @content; } } @mixin min-screen-height($res) { @media #{$media-display} and (min-height: $res) { @content; } } // --------------------------------------------------------------------------------------------------------------------- // --- hdpi ------------------------------------------------------------------------------------------------------------ // --------------------------------------------------------------------------------------------------------------------- // Based on bourbon hidpi-media-queries file (https://github.com/thoughtbot/bourbon/blob/master/app/assets/stylesheets/css3/_hidpi-media-query.scss) // HiDPI mixin. Default value set to 1.3 to target Google Nexus 7 (http://bjango.com/articles/min-device-pixel-ratio/) @mixin hdpi($ratio: 1.3) { @media only screen and (-webkit-min-device-pixel-ratio: $ratio), only screen and (min--moz-device-pixel-ratio: $ratio), only screen and (-o-min-device-pixel-ratio: #{$ratio}/1), only screen and (min-resolution: #{round($ratio*96)}dpi), only screen and (min-resolution: #{$ratio}dppx) { @content; } } // --------------------------------------------------------------------------------------------------------------------- // --- iphone ---------------------------------------------------------------------------------------------------------- // --------------------------------------------------------------------------------------------------------------------- @mixin phone { $deviceMinWidth: 320px; $deviceMaxWidth: 480px; @media #{$media-display} and (min-width: $deviceMinWidth) and (max-width: $deviceMaxWidth) { @content; } } // --------------------------------------------------------------------------------------------------------------------- // --- iphone-retina --------------------------------------------------------------------------------------------------- // --------------------------------------------------------------------------------------------------------------------- @mixin iphone4($orientation: all) { $deviceMinWidth: 320px; $deviceMaxWidth: 480px; $devicePixelRatio: 2; $deviceAspectRatio: '2/3'; @if $orientation == all { @media only screen and (min-device-width: $deviceMinWidth) and (max-device-width: $deviceMaxWidth) and (-webkit-device-pixel-ratio: $devicePixelRatio) and (device-aspect-ratio: $deviceAspectRatio) { @content; } } @else { @media only screen and (min-device-width: $deviceMinWidth) and (max-device-width: $deviceMaxWidth) and (-webkit-device-pixel-ratio: $devicePixelRatio) and (device-aspect-ratio: 2/3) and (orientation:#{$orientation}) { @content; } } } // --------------------------------------------------------------------------------------------------------------------- // --- iphone-5 -------------------------------------------------------------------------------------------------------- // --------------------------------------------------------------------------------------------------------------------- @mixin iphone5($orientation: all) { $deviceMinWidth: 320px; $deviceMaxWidth: 568px; $devicePixelRatio: 2; $deviceAspectRatio: '40/71'; @if $orientation == all { @media only screen and (min-device-width: $deviceMinWidth) and (max-device-width: $deviceMaxWidth) and (-webkit-device-pixel-ratio: $devicePixelRatio) and (device-aspect-ratio: $deviceAspectRatio) { @content; } } @else { @media only screen and (min-device-width: $deviceMinWidth) and (max-device-width: $deviceMaxWidth) and (-webkit-device-pixel-ratio: $devicePixelRatio) and (device-aspect-ratio: $deviceAspectRatio) and (orientation:#{$orientation}) { @content; } } } // --------------------------------------------------------------------------------------------------------------------- // --- ipads (all) ----------------------------------------------------------------------------------------------------- // --------------------------------------------------------------------------------------------------------------------- @mixin ipad($orientation: all) { $deviceMinWidth: 768px; $deviceMaxWidth: 1024px; @if $orientation == all { @media only screen and (min-device-width: $deviceMinWidth) and (max-device-width: $deviceMaxWidth) { @content; } } @else { @media only screen and (min-device-width: $deviceMinWidth) and (max-device-width: $deviceMaxWidth) and (orientation:#{$orientation}) { @content; } } } // --------------------------------------------------------------------------------------------------------------------- // --- ipad-retina ----------------------------------------------------------------------------------------------------- // --------------------------------------------------------------------------------------------------------------------- @mixin ipad-retina($orientation: all) { $deviceMinWidth: 768px; $deviceMaxWidth: 1024px; $devicePixelRatio: 2; @if $orientation == all { @media only screen and (min-device-width: $deviceMinWidth) and (max-device-width: $deviceMaxWidth) and (-webkit-device-pixel-ratio: $devicePixelRatio) { @content; } } @else { @media only screen and (min-device-width: $deviceMinWidth) and (max-device-width: $deviceMaxWidth) and (-webkit-device-pixel-ratio: $devicePixelRatio) and (orientation:#{$orientation}) { @content; } } }