当前位置: 首页 > news >正文

咖啡网站开发黔东南网站建设gzklyy

咖啡网站开发,黔东南网站建设gzklyy,网站建设宽度,什么网站做展板的多实现流光边框一般是用渐变背景加动画实现#xff0c;然后使用内部盒子遮挡内部空间#xff0c;达到边框流光的效果 思路#xff1a;背景渐变旋转动画 功能#xff1a; 自定义渐变#xff08;是否渐变不渐变没有流光效果#xff0c;渐变颜色#xff0c;渐变角…实现流光边框一般是用渐变背景加动画实现然后使用内部盒子遮挡内部空间达到边框流光的效果 思路背景渐变旋转动画 功能 自定义渐变是否渐变不渐变没有流光效果渐变颜色渐变角度渐变宽度自定义动画时间 1 基础实现 templateBox 测试 /Box /template script setup langts import Box from ./Box.vue; /script style scoped/styletemplatediv classboxdiv classcontentslot/slot/div/div /template script setup langts/script style scoped langscss .box {display: flex;justify-content: center;align-items: center;text-align: center;position: relative;width: 100%;height: 100%;padding: 5px;border-radius: 10px;overflow: hidden;:before {content: ;background-image: linear-gradient(120deg, #5ddcff, #3c67e3 40%, #4e00c2);position: absolute;z-index: 0;padding-left: 130%;padding-bottom: 130%;animation: rotate 8s linear infinite;}.content {height: 100%;width: 100%;display: flex;align-items: center;padding: 24px 20px;background: #f1d674;z-index: 2;border-radius: 6px;} } keyframes rotate {0% {transform: rotate(0deg);}100% {transform: rotate(360deg);} } /style 动图略 2 封装组件 2.1 圆形边框 使用mask属性使得中间部分背景不被遮挡 templatediv classbox :style{ width: width px, height: height px }slot/slot/div /template script setup langts const props defineProps({width: {type: Number, //容器宽default: 100,},height: {type: Number, //容器高default: 100,},colors: {//颜色数组type: Array,default: () [{color: #64dcfd,width: 0,},{color: #406cf1,width: 100,},{color: #4501ac,width: 101,},],},angle: {//渐变角度type: Number,default: 120,},borderWidth: {//流光边框宽度type: Number,default: 10,},gradient: {//是否渐变type: Boolean,default: true,},duration: {//动画时间type: String,default: 5s,}, });const background computed(() {const positions [];const colorsCopy JSON.parse(JSON.stringify(props.colors));colorsCopy.forEach((s, index) {const sum colorsCopy.slice(0, index).reduce((a, b) a b.width, 0);if (!props.gradient) {positions.push(sum);}positions.push(sum s.width);});return linear-gradient(${props.angle}deg, ${colorsCopy.map((s, index) {if (!props.gradient) {return ${s.color} ${positions[index]}px, ${s.color} ${positions[2 * index 1]}px;}return ${s.color} ${positions[index]}px;}).join(,)}); });const borderLR computed(() {return props.width / 2 - props.borderWidth px; }); const borderLRShink computed(() {return props.width / 2 - props.borderWidth - 1 px; }); /script style scoped langscss .box {display: flex;justify-content: center;align-items: center;position: relative;width: 100%;height: 100%;border-radius: 50%;overflow: hidden;:before {content: ;background-image: v-bind(background);position: absolute;width: 100%;height: 100%;border-radius: 50%;animation: rotate v-bind(duration) linear infinite;mask: radial-gradient(transparent,transparent v-bind(borderLRShink),#000 v-bind(borderLR));-webkit-mask: radial-gradient(transparent,transparent v-bind(borderLRShink),#000 v-bind(borderLR));} } keyframes rotate {0% {transform: rotate(0deg);}100% {transform: rotate(360deg);} } /style​​​​​​​ 2.2 矩形边框 使用伪元素自定义中间部分背景 templatediv classbox :style{ width: width px, height: height px }slot/slot/div /template script setup langts const props defineProps({width: {type: Number, //容器宽default: 100,},height: {type: Number, //容器高default: 100,},colors: {//颜色数组type: Array,default: () [{color: #64dcfd,width: 0,},{color: #406cf1,width: 100,},{color: #4501ac,width: 101,},],},angle: {//渐变角度type: Number,default: 120,},borderWidth: {//左右流光边框宽度type: [Array, Number],default: [20, 5],},gradient: {//是否渐变type: Boolean,default: true,},duration: {//动画时间type: String,default: 5s,},innerBackground: {//内部背景type: String,default: #FFF,}, });const background computed(() {const positions [];const colorsCopy JSON.parse(JSON.stringify(props.colors));colorsCopy.forEach((s, index) {const sum colorsCopy.slice(0, index).reduce((a, b) a b.width, 0);if (!props.gradient) {positions.push(sum);}positions.push(sum s.width);});return linear-gradient(${props.angle}deg, ${colorsCopy.map((s, index) {if (!props.gradient) {return ${s.color} ${positions[index]}px, ${s.color} ${positions[2 * index 1]}px;}return ${s.color} ${positions[index]}px;}).join(,)}); });const innerWidth computed(() {let doubleBorderWidth 0;if (Array.isArray(props.borderWidth)) {if (props.borderWidth.length 2) {doubleBorderWidth props.borderWidth[1] * 2;} else if (props.borderWidth.length 1) {doubleBorderWidth props.borderWidth[0] * 2;}} else {doubleBorderWidth props.borderWidth * 2;}return props.width - doubleBorderWidth px; }); const innerheight computed(() {let doubleBorderWidth 0;if (Array.isArray(props.borderWidth)) {if (props.borderWidth.length 2) {doubleBorderWidth props.borderWidth[0] * 2;} else if (props.borderWidth.length 1) {doubleBorderWidth props.borderWidth[0] * 2;}} else {doubleBorderWidth props.borderWidth * 2;}return props.height - doubleBorderWidth px; }); const colorSize computed(() {return (Math.ceil(Math.sqrt(props.width * props.width props.height * props.height)) px); }); /script style scoped langscss .box {display: flex;justify-content: center;align-items: center;position: relative;width: 100%;height: 100%;overflow: hidden;:before {content: ;background-image: v-bind(background);position: absolute;width: v-bind(colorSize);height: v-bind(colorSize);animation: rotate v-bind(duration) linear infinite;}:after {content: ;background: v-bind(innerBackground);position: absolute;z-index: 1;width: v-bind(innerWidth);height: v-bind(innerheight);} } keyframes rotate {0% {transform: rotate(0deg);}100% {transform: rotate(360deg);} } /style
http://www.hkea.cn/news/14386795/

相关文章:

  • 宁德建设银行网站网站怎么更换页面图片
  • 网站标题tdk用ps做一份网站
  • 国内外网站开发有哪些技术wordpress 页脚改颜色
  • 网站地图什么格式wordpress 插件 主体
  • 国内做网站上市公司湖北省建设工程造价信息网
  • 上海徽与章网站建设宗旨黄山seo公司
  • 网站建设南沙长春最专业的网站建设
  • 济南房产信息网站官网查询做网站一般不选用的图片格式
  • wordpress 背景搜狗seo查询
  • 怎么做网站自动响应wordpress登陆网址
  • 网址大全12306优化关键词的方法有哪些
  • 建设银行纪念币网站17网站一起做网店图片工具
  • 龙华网站建设的公司投资项目网
  • 旅游网网站建设方案国内网站排名
  • 企业网站建设全包手机网站建设多少钱一个
  • 淄博营销网站建设服务上海虹口建设局官方网站
  • 做网站的目标华威桥网站建设
  • 龙华做棋牌网站建设多少钱广告创意设计图片赏析
  • 北京建站模板厂家做像淘宝这样的购物网站要多少钱
  • 湛江做网站咨询电话如何制作网页表格
  • 网站排名seo软件网站建设可行性分析报告模板
  • 附近的网站设计制作价格网站源码下载教程
  • 宁波网站排名优化tk域名网站多少
  • 西安百度推广运营公司seo赚钱项目
  • 学校网站建设项目要多少钱去了外包简历就毁了吗
  • 公司网站是否有必要销售产品WordPress评论加签到
  • 张家港杨舍网站建设江苏建设工程造价管理网站
  • 广元网站设计山东泰安昨晚发生的事
  • 泉州模板建站平台怎么搞自己的网站
  • 心悦俱乐部官方网站怎么做任务小颜自助建站系统