123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149 |
- /**
- * Placeholder attribute for inputs
- *
- * @return {string} Placeholder attributes
- */
- @mixin placeholder {
- &::-webkit-input-placeholder {@content;}
- &::-moz-placeholder {@content;}
- &:-ms-input-placeholder {@content;}
- &:placeholder-shown {@content;}
- }
- /**
- * Spinner element
- *
- * @param {string} $color - Color
- * @param {string} $dur - Animation Duration
- * @param {int} $width - Width
- * @param {int} $height [$width] - height
- *
- * @return {string} Spinner element
- */
- @mixin spinner($color,$dur,$width,$height:$width) {
- width: $width;
- height: $height;
- border-radius: 50%;
- box-shadow: 0 0 0 1px rgba(0,0,0,0.1), 2px 1px 0 $color;
- @include prefix(animation, spin $dur linear infinite);
- @include keyframes(spin) {
- 100%{
- @include prefix(transform, rotate(360deg));
- }
- }
- }
- /**
- * Prefixes for keyframes
- *
- * @param {string} $animation-name - The animation name
- *
- * @return {string} Prefixed keyframes attributes
- */
- @mixin keyframes($animation-name) {
- @-webkit-keyframes #{$animation-name} {
- @content;
- }
- @-moz-keyframes #{$animation-name} {
- @content;
- }
- @-o-keyframes #{$animation-name} {
- @content;
- }
- @keyframes #{$animation-name} {
- @content;
- }
- }
- /**
- * Prefix function for browser compatibility
- *
- * @param {string} $property - Property name
- * @param {any} $value - Property value
- *
- * @return {string} Prefixed attributes
- */
- @mixin prefix($property, $value) {
- -webkit-#{$property}: #{$value};
- -moz-#{$property}: #{$value};
- -ms-#{$property}: #{$value};
- -o-#{$property}: #{$value};
- #{$property}: #{$value};
- }
- /**
- * Layout Mixins
- */
- @mixin from($device) {
- @media screen and (min-width: $device) {
- @content;
- }
- }
- @mixin until($device) {
- @media screen and (max-width: $device - 1px) {
- @content;
- }
- }
- @mixin mobile {
- @media screen and (max-width: $tablet - 1px) {
- @content;
- }
- }
- @mixin tablet {
- @media screen and (min-width: $tablet) {
- @content;
- }
- }
- @mixin tablet-only {
- @media screen and (min-width: $tablet) and (max-width: $desktop - 1px) {
- @content;
- }
- }
- @mixin touch {
- @media screen and (max-width: $desktop - 1px) {
- @content;
- }
- }
- @mixin desktop {
- @media screen and (min-width: $desktop) {
- @content;
- }
- }
- @mixin desktop-only {
- @media screen and (min-width: $desktop) and (max-width: $widescreen - 1px) {
- @content;
- }
- }
- @mixin widescreen {
- @media screen and (min-width: $widescreen) {
- @content;
- }
- }
- // Nucleo Icons
- @mixin nc-rotate($degrees, $rotation) {
- filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation});
- -webkit-transform: rotate($degrees);
- -moz-transform: rotate($degrees);
- -ms-transform: rotate($degrees);
- -o-transform: rotate($degrees);
- transform: rotate($degrees);
- }
- @mixin nc-flip($horiz, $vert, $rotation) {
- filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation});
- -webkit-transform: scale($horiz, $vert);
- -moz-transform: scale($horiz, $vert);
- -ms-transform: scale($horiz, $vert);
- -o-transform: scale($horiz, $vert);
- transform: scale($horiz, $vert);
- }
|