123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175 |
- // *************************************
- //
- // Helpers
- // -> Functions, Mixins, Extends, Animations
- //
- // *************************************
- // -------------------------------------
- // Functions
- // -------------------------------------
- // ----- Em ----- //
- // -> Converts pixel value to an em
- //
- // $target - the target pixel size
- // $context - the context font-size
- @function em($target, $context: $b-fontSize)
- @if ($target == 0)
- @return 0
- @else
- @return ($target / $context) * 1em
- // ----- Opposite Position ----- //
- // -> Returns the opposite side
- //
- // $side - the side to return the opposite of
- //
- @function opposite-position($side)
- @if $side == 'top'
- @return 'bottom'
- @if $side == 'bottom'
- @return 'top'
- @if $side == 'left'
- @return 'right'
- @if $side == 'right'
- @return 'left'
- // -------------------------------------
- // Mixins
- // -------------------------------------
- // ----- Font Face ----- //
- // -> https://github.com/thoughtbot/bourbon/edit/master/app/assets/stylesheets/css3/_font-face.scss#
- //
- // $family - the font-family
- // $path - the font path
- // $weight - the font-weight
- // $style - the font-style
- // $asset-pipeline - use the Rails asset pipeline (boolean)
- =font-face($family, $path, $weight: normal, $style: normal, $asset-pipeline: true)
- @font-face
- font-family: $family
- font-style: $style
- font-weight: $weight
- @if $asset-pipeline == true
- src: font-url('#{$path}.eot')
- src: font-url('#{$path}.eot?#iefix') format('embedded-opentype'), font-url('#{$path}.woff') format('woff'), font-url('#{$path}.ttf') format('truetype'), font-url('#{$path}.svg##{$family}') format('svg')
- @else
- src: url('#{$path}.eot')
- src: url('#{$path}.eot?#iefix') format('embedded-opentype'), url('#{$path}.woff') format('woff'), url('#{$path}.ttf') format('truetype'), url('#{$path}.svg##{$family}') format('svg')
- // ----- Respond-to ----- //
- // -> Generates a media query
- //
- // $val - the breakpoint size
- // $query - the type of query ('min-width', 'max-width')
- // $media - the media type ('screen', 'print', etc.)
- // @content - the generated content within the mixin
- =respond-to($val, $query: min-width, $media: screen)
- @media #{$media} and ($query: $val)
- @content
- // ----- Caret ----- //
- // -> Adds an arrow to an element
- //
- // $side - the side ('left', 'right', 'top', 'bottom')
- // $size - the size of the caret
- // $color - the color of the caret
- //
- =caret($side, $size, $color)
- $opposite: opposite-position($side)
- border: $size solid transparent
- border-#{$opposite}: $size solid $color
- border-#{$side}: 0
- bottom: auto
- content: ''
- display: block
- height: 0
- left: 50%
- margin: (-$size) 0 0 (-$size)
- margin-#{$side}: 0
- position: absolute
- right: auto
- top: 50%
- width: 0
- #{$side}: -$size
- #{$opposite}: auto
- // ----- Transform ----- //
- // -> Auto-prefixed transform properties
- //
- // $args - a variable number of transform values
- //
- =transform($args...)
- -webkit-transform: $args
- -moz-transform: $args
- -ms-transform: $args
- transform: $args
- // ----- Transition ----- //
- // -> Auto-prefixed transition properties
- //
- // $args - a variable number of transition values
- //
- =transition($args...)
- -webkit-transition: $args
- transition: $args
- // ----- Transition Transform ----- //
- // -> Auto-prefixed transition properties (for transforms)
- //
- // $args - a variable number of transform values
- //
- =transition-transform($args...)
- -webkit-transition: -webkit-transform $args
- transition: transform $args
- // -------------------------------------
- // Extends
- // -------------------------------------
- // ----- Clearfix ----- //
- %group::after
- clear: both
- content: ''
- display: table
- // ----- Faux Hide ----- //
- %fauxHide
- height: 0
- opacity: 0
- overflow: hidden
- visibility: hidden
- // ----- Faux Show ----- //
- %fauxShow
- height: auto
- opacity: 1
- overflow: visible
- visibility: visible
- // ----- Box Sizing ----- //
- %boxSizing
- -moz-box-sizing: border-box
- box-sizing: border-box
- // -------------------------------------
- // Animations
- // -------------------------------------
- // ...
|