// Foundation by ZURB // foundation.zurb.com // Licensed under MIT Open Source @import 'global'; // // Alert Box Variables // $include-html-alert-classes: $include-html-classes !default; // We use this to control alert padding. $alert-padding-top: rem-calc(14) !default; $alert-padding-default-float: $alert-padding-top !default; $alert-padding-opposite-direction: $alert-padding-top + rem-calc(10) !default; $alert-padding-bottom: $alert-padding-top !default; // We use these to control text style. $alert-font-weight: $font-weight-normal !default; $alert-font-size: rem-calc(13) !default; $alert-font-color: $white !default; $alert-font-color-alt: scale-color($secondary-color, $lightness: -66%) !default; // We use this for close hover effect. $alert-function-factor: -14% !default; // We use these to control border styles. $alert-border-style: solid !default; $alert-border-width: 1px !default; $alert-border-color: scale-color($primary-color, $lightness: $alert-function-factor) !default; $alert-bottom-margin: rem-calc(20) !default; // We use these to style the close buttons $alert-close-color: $oil !default; $alert-close-top: 50% !default; $alert-close-position: rem-calc(4) !default; $alert-close-font-size: rem-calc(22) !default; $alert-close-opacity: .3 !default; $alert-close-opacity-hover: .5 !default; $alert-close-padding: 0 6px 4px !default; $alert-close-background: inherit !default; // We use this to control border radius $alert-radius: $global-radius !default; $alert-transition-speed: 300ms !default; $alert-transition-ease: ease-out !default; // // Alert Mixins // // We use this mixin to create a default alert base. @mixin alert-base { border-style: $alert-border-style; border-width: $alert-border-width; display: block; font-size: $alert-font-size; font-weight: $alert-font-weight; margin-bottom: $alert-bottom-margin; padding: $alert-padding-top $alert-padding-opposite-direction $alert-padding-bottom $alert-padding-default-float; position: relative; @include single-transition(opacity, $alert-transition-speed, $alert-transition-ease) } // We use this mixin to add alert styles // // $bg - The background of the alert. Default: $primary-color. @mixin alert-style($bg:$primary-color) { // This finds the lightness percentage of the background color. $bg-lightness: lightness($bg); // We control which background color and border come through. background-color: $bg; border-color: scale-color($bg, $lightness: $alert-function-factor); // We control the text color for you based on the background color. @if $bg-lightness > 70% { color: $alert-font-color-alt; } @else { color: $alert-font-color; } } // We use this to create the close button. @mixin alert-close { #{$opposite-direction}: $alert-close-position; background: $alert-close-background; color: $alert-close-color; font-size: $alert-close-font-size; line-height: .9; margin-top: -($alert-close-font-size / 2); opacity: $alert-close-opacity; padding: $alert-close-padding; position: absolute; top: $alert-close-top; &:hover, &:focus { opacity: $alert-close-opacity-hover; } } // We use this to quickly create alerts with a single mixin. // // $bg - Background of alert. Default: $primary-color. // $radius - Radius of alert box. Default: false. @mixin alert($bg:$primary-color, $radius:false) { @include alert-base; @include alert-style($bg); @include radius($radius); } @include exports("alert-box") { @if $include-html-alert-classes { .alert-box { @include alert; .close { @include alert-close; } &.radius { @include radius($alert-radius); } &.round { @include radius($global-rounded); } &.success { @include alert-style($success-color); } &.alert { @include alert-style($alert-color); } &.secondary { @include alert-style($secondary-color); } &.warning { @include alert-style($warning-color); } &.info { @include alert-style($info-color); } &.alert-close { opacity: 0} } } }