123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130 |
- // 按钮组件样式复用
- /**
- * [btn-bg 按钮样式复用,包含默认、移入、点击样式交互]
- * @param {[string]} $bgc [eg:#fff,可选参]
- * @param {[string]} $percent [eg:10%,可选参]
- */
- @mixin btn-bg($bgc: #4790d0, $percent: 10%) {
- background-color: $bgc;
- &:hover {
- background-color: lighten($bgc, $percent);
- }
- &:active {
- background-color: darken($bgc, $percent);
- }
- }
- @mixin box-shadow($x, $y, $w, $b, $rgba) {
- -webkit-box-shadow: $x $y $w $b $rgba;
- -moz-box-shadow: $x $y $w $b $rgba;
- box-shadow: $x $y $w $b $rgba;
- }
- @mixin transition($prop, $dur, $timingfun: linear) {
- -webkit-transition: $prop $dur $timingfun;
- -moz-transition: $prop $dur $timingfun;
- -o-transition: $prop $dur $timingfun;
- transition: $prop $dur $timingfun;
- }
- /* 边框颜色变化*/
- @mixin btn-bor($bor: #4790d0, $pre: 10%) {
- &:hover {
- border-color: $bor;
- color: $bor;
- }
- &:active {
- border-color: darken($bor, $pre);
- color: darken($bor, $pre);
- }
- }
- /* 字体和背景色互换*/
- @mixin btn-bg-cor($bgc: #fff, $cor: #f04134, $pre: 5%) {
- color: $cor;
- background-color: $bgc;
- &:hover {
- color: $bgc;
- background-color: $cor;
- }
- &:active {
- background-color: darken($cor, $pre);
- }
- }
- /* 点击有内阴影 */
- @mixin btn-shadow($bgc: #4790d0,$pre: 5%) {
- background-color: $bgc;
- &:hover {
- background-color: darken($bgc,$pre);
- }
- &:active {
- -webkit-box-shadow: 0 3px 5px 0 rgba(0,0,0,.125) inset;
- -moz-box-shadow: 0 3px 5px 0 rgba(0,0,0,.125) inset;
- box-shadow: 0 3px 5px 0 rgba(0,0,0,.125) inset;
- }
- }
- /* 鼠标抬起出现点击后阴影 start*/
- @mixin spread($bgc: #4790d0, $point: .6, $spr: 5px) {
- position: relative;
- &:after {
- position: absolute;
- top: 0;
- left: 0;
- opacity: 0;
- content: "";
- @include box-shadow(0,0,0,$spr,rgba($bgc,$point));
- @include transition(all,.5s);
- }
- &:active:after {
- opacity: 1;
- @include box-shadow(0,0,0,0px,rgba($bgc,$point));
- @include transition(all,0s);
- }
- }
- /* 鼠标抬起出现点击后阴影 end */
- /* 波纹效果 start*/
- @mixin ripple($top: -10%, $left: 10%) {
- position: relative;
- overflow: hidden;
- &:after {
- position: absolute;
- display: block;
- opacity: 0;
- padding-top: 240%;
- padding-left: 240%;
- border-radius: 50%;
- margin-top: -120%;
- margin-left: -120%;
- background: rgba(255, 255, 255, .3);
- content: "";
- @include transition(all,1s);
- }
- &:active:after {
- opacity: 1;
- padding-top: 0;
- padding-left: 0;
- margin-top: $top;
- margin-left: $left;
- @include transition(all,0s);
- }
- }
- /* 波纹效果 end*/
- /* 不可点击 start*/
- @mixin disabled($fc: #999, $brc: #ccc, $bgc: #ddd) {
- border: 1px solid $brc;
- color: $fc;
- background: $bgc;
- cursor: no-drop;
- }
- /* 不可点击 end*/
|