mirror of https://github.com/SnapKit/SnapKit
129 lines
4.0 KiB
SCSS
129 lines
4.0 KiB
SCSS
|
// 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}
|
||
|
}
|
||
|
}
|
||
|
}
|