@charset "utf-8";
/*
 * @file:      SASS常用Function与Mixins
 * @update:    2015-06-03 17:17:50
 * @copyright: MIT License
 */


/*
 * @name:  inline-block
 * @param: $alignment {string}  对齐类型
 * @param: $support-for-ie {boolean}  是否支持IE6
 */
@mixin inline-block($alignment: middle, $support-for-ie: true) {
    display: inline-block;
    @if $alignment and $alignment != none {
        vertical-align: $alignment;
    }
    @if $support-for-ie {
        *vertical-align: auto;
        *display: inline;
        zoom: 1;
    }
}

/* @name: 闭合浮动 */
@mixin clearfix {
    *zoom: 1;
    &:before,
    &:after {
        content: "";
        display: table;
        line-height: 0;
    }
    &:after {
        clear: both;
    }
}

/*
 * @name:  浮动
 * @param: $side {string}  浮动方向
 * @param: $support-for-ie {boolean}  是否支持IE6
 */
@mixin float($side: left, $support-for-ie: true) {
    float: unquote($side);
    @if $support-for-ie {
        _display: inline;
    }
}

/* @name: 文本隐藏 */
@mixin hide-text {
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}

/*
 * @name:  文字溢出显示省略号
 * @param: $width {dimension}  指定宽度 (需带单位)
 * 1. Opera 9-10.6
 * 2. Chrome 21+ bug https://bugs.webkit.org/show_bug.cgi?id=121902
 */
@mixin ellipsis($width: auto) {
    @if($width) {
        width: $width;
    }
    white-space: nowrap;
    word-wrap: normal;
    overflow: hidden;
    -o-text-overflow: ellipsis; /* 1 */
    text-overflow: ellipsis;
    text-align: left; /* 2 */
}

/*
 * @name: 强制不换行
 * @link: http://www.hicss.net/solve-change-line-in-css
 */
@mixin nowrap {
    white-space: nowrap;
    word-wrap: normal;
    word-break: keep-all;
}

/* @name: 连续字符换行 */
@mixin break {
    -ms-word-break: break-all;
    word-break: break-all;
    word-break: break-word;
}

/* @name: 保留空白符序列，但是正常地进行换行 */
@mixin pre {
    white-space: -moz-pre-wrap;
    white-space: -pre-wrap;
    white-space: -o-pre-wrap;
    white-space: pre-wrap;
    word-wrap: break-word;
}

/*
 * @name:  resizable
 * @param: $direction {string}  缩放的方向 (horizontal || vertical || both)
 * @link:  https://github.com/twbs/bootstrap-sass/blob/master/assets/stylesheets/bootstrap/mixins/_resize.scss
 * @1:     Per CSS3 UI, `resize` only applies when `overflow` isn't `visible`
 */
@mixin resizable($direction) {
    resize: $direction;
    overflow: auto; /* 1 */
}


/*
 * @name:  背景透明
 * @param: $color {color}  颜色  
 * @param: $opacity {number}  透明度
 * @param: $support-for-ie {boolean}  是否支持IE6
 * @link:  https://github.com/airen/Sass_mixins_function/tree/master/mixins
 */
@mixin transparent($color, $opacity, $support-for-ie:true) {
    background-color: transparent;
    background-color: rgba($color, $opacity);
    @if $support-for-ie {
        filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#{ie-hex-str(rgba($color, $opacity))},endColorstr=#{ie-hex-str(rgba($color, $opacity))});
        zoom: 1;
        :root & {
            filter: none;
        }
    }
}

/*
 * @name:  透明度
 * @param: $opacity {number}  透明度
 * @param: $support-for-ie {boolean}  是否支持IE6
 */
@mixin opacity($opacity:.65, $support-for-ie:true) {
    opacity: $opacity;
    @if $support-for-ie{
        $opacity-ie: $opacity * 100;
        filter: alpha(opacity=$opacity-ie); //IE8
    }
}

/* @name: 重置滤镜 */
@mixin reset-filter {
    filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
}


/*
 * @name:  border三角形
 * @param: $base {dimension}  底边尺寸
 * @param: $height {dimension}  高度
 * @param: $color {color}  颜色
 * @param: $direction {string}  方向 (top || bottom || left || right)
 * @link:  http://codepen.io/zhouwenbin/pen/emZVZp
 */
@mixin triangle($base, $height, $color, $direction) {
    font-size: 0;
    width: 0;
    height: 0;
    line-height: 0;
    overflow: hidden;
    display: inline-block;
    *display: inline;
    *zoom: 1;
    vertical-align: -2px;
    border-style: dashed;
    
    @if($direction == top) {
        border-width: $height $base / 2;
        border-color: transparent transparent $color;
        margin-top: -$height;
    }
    @if($direction == bottom) {
        border-width: $height $base / 2;
        border-color: $color transparent transparent;
        margin-bottom: -$height;
    }
    @if($direction == left) {
        border-width: $base / 2 $height;
        border-color: transparent transparent transparent $color;
        margin-right: -$height;
    }
    @if($direction == right) {
        border-width: $base / 2 $height;
        border-color: transparent $color transparent transparent;
        margin-left: -$height;
    }
}

/* @name: 按钮配色 */
@mixin button-variant($color, $background, $border) {
    color: $color;
    background-color: $background;
    border-color: $border;
    &.is-hover,
    &:hover {
        color: $color;
        background-color: lighten($background, 8%);
        border-color: lighten($border, 10%);
        text-decoration: none; // 去掉a标签按钮的下划线
    }
}

/* @name: 按钮尺寸 */
@mixin button-size($padding-vertical, $padding-horizontal, $font-size, $border-radius) {
    padding: $padding-vertical $padding-horizontal;
    font-size: $font-size;
    border-radius: $border-radius;
}

