You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
119 lines
3.5 KiB
119 lines
3.5 KiB
3 years ago
|
<template>
|
||
|
<view>
|
||
|
<!-- 按钮 -->
|
||
|
<button :class="['buttonBorder',!_rotate?'dlbutton':'dlbutton_loading']" :style="{'background':bgColor, 'color': fontColor}">
|
||
|
<view :class="_rotate?'rotate_loop':''">
|
||
|
<text v-if="_rotate" class="cuIcon cuIcon-loading1 "></text>
|
||
|
<text v-if="!_rotate">{{ text }}</text>
|
||
|
</view>
|
||
|
</button>
|
||
|
</view>
|
||
|
</template>
|
||
|
|
||
|
<script>
|
||
|
export default{
|
||
|
props:{
|
||
|
text: String, //显示文本
|
||
|
rotate:{
|
||
|
//是否启动加载
|
||
|
type: [Boolean,String],
|
||
|
default: false,
|
||
|
},
|
||
|
bgColor:{
|
||
|
//按钮背景颜色
|
||
|
type: String,
|
||
|
// default: "linear-gradient(to right, rgba(0,0,0,0.7), rgba(0,0,0,0.6))",
|
||
|
},
|
||
|
fontColor:{
|
||
|
//按钮字体颜色
|
||
|
type: String,
|
||
|
default: "#FFFFFF",
|
||
|
},
|
||
|
},
|
||
|
computed:{
|
||
|
_rotate() {
|
||
|
//处理值
|
||
|
return String(this.rotate) !== 'false'
|
||
|
},
|
||
|
}
|
||
|
}
|
||
|
</script>
|
||
|
|
||
|
<style>
|
||
|
@import url("./css/icon.css");
|
||
|
|
||
|
.dlbutton {
|
||
|
color: #FFFFFF;
|
||
|
font-size: 30upx;
|
||
|
width:601upx;
|
||
|
height:90upx;
|
||
|
background: -moz-linear-gradient(left, #F15B6C, #e10a07 100%);
|
||
|
background: -webkit-gradient(linear, left top, left right, color-stop(0, #F15B6C), color-stop(100%, #e10a07));
|
||
|
background: -webkit-linear-gradient(left, #F15B6C 0, #e10a07 100%);
|
||
|
background: -o-linear-gradient(left, #F15B6C 0, #e10a07 100%);
|
||
|
background: -ms-linear-gradient(left, #F15B6C 0, #e10a07 100%);
|
||
|
background: linear-gradient(to left, #F15B6C 0, #e10a07 100%);
|
||
|
box-shadow:0upx 0upx 13upx 0upx rgba(164,217,228,0.4);
|
||
|
border-radius:2.5rem;
|
||
|
line-height: 90upx;
|
||
|
text-align: center;
|
||
|
margin-left: auto;
|
||
|
margin-right: auto;
|
||
|
margin-top: 96upx;
|
||
|
}
|
||
|
.dlbutton_loading {
|
||
|
color: #FFFFFF;
|
||
|
font-size: 30upx;
|
||
|
width:100upx;
|
||
|
height:100upx;
|
||
|
background: -moz-linear-gradient(left, #F15B6C, #e10a07 100%);
|
||
|
background: -webkit-gradient(linear, left top, left right, color-stop(0, #F15B6C), color-stop(100%, #e10a07));
|
||
|
background: -webkit-linear-gradient(left, #F15B6C 0, #e10a07 100%);
|
||
|
background: -o-linear-gradient(left, #F15B6C 0, #e10a07 100%);
|
||
|
background: -ms-linear-gradient(left, #F15B6C 0, #e10a07 100%);
|
||
|
background: linear-gradient(to left, #F15B6C 0, #e10a07 100%);
|
||
|
box-shadow:0upx 0upx 13upx 0upx rgba(164,217,228,0.4);
|
||
|
border-radius:2.5rem;
|
||
|
line-height: 100upx;
|
||
|
text-align: center;
|
||
|
margin-left: auto;
|
||
|
margin-right: auto;
|
||
|
margin-top: 96upx;
|
||
|
}
|
||
|
.buttonBorder{
|
||
|
border: none ;
|
||
|
border-radius: 2.5rem ;
|
||
|
-webkit-box-shadow: 0 0 60upx 0 rgba(0,0,0,.2) ;
|
||
|
box-shadow: 0 0 60upx 0 rgba(0,0,0,.2) ;
|
||
|
-webkit-transition: all 0.4s cubic-bezier(.57,.19,.51,.95);
|
||
|
-moz-transition: all 0.4s cubic-bezier(.57,.19,.51,.95);
|
||
|
-ms-transition: all 0.4s cubic-bezier(.57,.19,.51,.95);
|
||
|
-o-transition: all 0.4s cubic-bezier(.57,.19,.51,.95);
|
||
|
transition: all 0.4s cubic-bezier(.57,.19,.51,.95);
|
||
|
}
|
||
|
|
||
|
/* 旋转动画 */
|
||
|
.rotate_loop{
|
||
|
-webkit-transition-property: -webkit-transform;
|
||
|
-webkit-transition-duration: 1s;
|
||
|
-moz-transition-property: -moz-transform;
|
||
|
-moz-transition-duration: 1s;
|
||
|
-webkit-animation: rotate 1s linear infinite;
|
||
|
-moz-animation: rotate 1s linear infinite;
|
||
|
-o-animation: rotate 1s linear infinite;
|
||
|
animation: rotate 1s linear infinite;
|
||
|
}
|
||
|
@-webkit-keyframes rotate{from{-webkit-transform: rotate(0deg)}
|
||
|
to{-webkit-transform: rotate(360deg)}
|
||
|
}
|
||
|
@-moz-keyframes rotate{from{-moz-transform: rotate(0deg)}
|
||
|
to{-moz-transform: rotate(359deg)}
|
||
|
}
|
||
|
@-o-keyframes rotate{from{-o-transform: rotate(0deg)}
|
||
|
to{-o-transform: rotate(359deg)}
|
||
|
}
|
||
|
@keyframes rotate{from{transform: rotate(0deg)}
|
||
|
to{transform: rotate(359deg)}
|
||
|
}
|
||
|
</style>
|