vue实现移动端手机端签到日历待办事项工作进度效果代码
代码语言:html
所属分类:布局界面
代码描述:vue实现移动端手机端签到日历待办事项工作进度效果代码
代码标签: 端 手机 端 签到 日历 待办 事项 工作 进度 效果
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" /> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>签到日历</title> <style> body, html { background-color: #F6F6F6; padding: 0; margin: 0; } .plan-finish-header { position: relative; width: 100%; height: 4.8rem; } .plan-finish-bg { position: absolute; top: 0; left: 0; width: 100%; height: 4.8rem; background: linear-gradient(135deg, rgba(5, 201, 221, 1) 0%, rgba(23, 196, 160, 1) 100%); } .plan-finish-bg::before { content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 1.2rem; background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%); } .plan-finish-bg::after { content: ''; position: absolute; bottom: -.5rem; left: 0.2rem; width: 7.1rem; height: .9rem; background: rgba(170, 233, 221, 1); border-radius: 1px; opacity: 0.5; filter: blur(24px); } .plan-finish-head { position: relative; display: flex; justify-content: space-between; width: 100%; padding: 0.3rem; color: #fff; } .plan-finish-info { flex: 1; padding-top: 0.2rem; } .plan-finish-tit { width: 100%; text-align: center; font-size: 0.44rem; } .plan-finish-info ul { padding-top: 0.3rem; display: flex; font-size: 0.24rem; } .plan-finish-info ul li { flex: 1; display: flex; align-items: center; justify-content: center; flex-direction: column; } .plan-nums { padding-top: 0.1rem; font-size: 0.48rem; } .plan-finish-ico { width: 2.5rem; height: 2.3rem; } .plan-finish-calendar { position: absolute; top: 3rem; left: 50%; transform: translateX(-50%); font-size: 0.24rem; padding: 0 0.3rem; } .plan-finish-btns{ width: 100%; padding: .8rem 0.3rem; display: flex; justify-content: space-between; align-items: center; } .plan-finish-btns li{ width:3rem; height:0.84rem; background:rgba(21,188,195,0.11); border-radius:0.42rem; display: flex; justify-content: center; align-items: center; font-size: 0.32rem; color: #15BCC3; } .plan-finish-btns li:last-child{ background: #15BCC3; color: #fff; } /* 日历 */ .calendar { min-height: 5rem; background: #fff; box-shadow: 0px 3px 24px 0px rgba(0, 0, 0, 0.1); border-radius: 0.2rem; overflow: hidden; font-size: 0.24rem; padding: 0 0.3rem; } .calendar .month { background: #ffffff; padding: 0.3rem; display: flex; justify-content: space-between; align-items: center; white-space: nowrap; } .calendar .month li { text-transform: uppercase; letter-spacing: 0; } .calendar .month .arrow { color: #333; width: 2rem; font-size: 0.24rem; display: flex; justify-content: center; align-items: center; } .calendar .mintui-arrowright { font-size: 0.36rem; width: 0.16rem; height: 0.16rem; border-top: 2px solid #666; border-right: 2px solid #666; transform: rotate(45deg); } .calendar .arrowleft { transform: rotate(-135deg); } .calendar .month .year-month { flex: 1; display: flex; justify-content: center; align-items: center; font-size: 0.36rem; color: #2D2D2D; } .calendar .weekdays { /*头部星期*/ padding: 0.1rem 0; background-color: rgba(21,188,195,0.1);border-radius: 0.4rem; display: flex; flex-wrap: wrap; justify-content: space-around; margin-bottom: 0.1rem; } .calendar .weekdays li { display: inline-block; text-align: center; } .calendar .days { /*日期*/ background: #FFFFFF; display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-start; padding-bottom: 0.2rem; } .calendar .days li { list-style-type: none; width: 14.2%; padding: 1%; box-sizing: border-box; text-align: center; color: #000; display: flex; justify-content: center; align-items: center; } .calendar .days li .day-li { position: relative; width: 0.68rem; height: 0.68rem; display: flex; align-items: center; justify-content: center; font-size: 0.28rem; border-radius: 50%; } .calendar .days li .day-checked{ border:1px solid #15BCC3; } .calendar .days li .day-li .day-span{ position: relative; width: 0.6rem; height: 0.6rem; display: flex; align-items: center; justify-content: center; font-size: 0.28rem; border:1px solid #fff; border-radius: 50%; } .calendar .other { color: #ccc; } .calendar .day-sign { /*签到的日期*/ background-color: #f5f5f5; color: #15BCC3; } .calendar .day-signed { background-color: #15BCC3; color: #fff; } .mtop1 { top: .4rem; } .plan-calendar-info { width: 100%; padding: 0.32rem 0; } .calendar-info-date { position: relative; width: 1.5rem; height: 0.42rem; display: flex; padding-left: 0.2rem; align-items: center; font-size: 0.26rem; color: #fff; background-color: #5BC0DE; border-radius: 0.2rem; } .calendar-info-date span { position: relative; } .absolute-bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; } .calendar-info-title { color: #2D2D2D; font-size: 0.32rem; padding: 0.3rem 0; font-weight: bold; } .calendar-info-list { display: flex; flex-wrap: wrap; padding-bottom: 0.2rem; } .calendar-info-list li { display: flex; justify-content: center; align-items: center; width: 1.54rem; height: 0.5rem; background: #fff; border-radius: 0.25rem; color: #333333; font-size: 0.24rem; margin-bottom: 0.2rem; margin-right: 0.2rem; } .calendar-info-list li:nth-child(4n) { margin-right: 0 } .calendar-info-text{ padding: 0.24rem; background:#FFFFFF; border-radius: 0.2rem; font-size: 0.26rem; color: #2D2D2D; } .calendar-info-nums{ color: #999999; padding-top: 0.15rem; } .mask-box { position: fixed; top: 0; left: 0; width: 100%; height: 100%; display: -webkit-box; display: -webkit-flex; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -webkit-align-items: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -webkit-justify-content: center; -moz-box-pack: center; -ms-flex-pack: center; justify-content: center; background: rgba(0, 0, 0, 0.6); } .swiper-box { position: relative; width: 100%; } .close-img-box { position: absolute; top: -.8rem; left: .8rem; width: .5rem; height: .5rem; padding: .1rem; } .close-img-box img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; } .swiper-container { width: 100%; } .swiper-slide { width: 7rem; } .poster-img { width: 100%; height: auto; -webkit-transform: scale(0.85); -moz-transform:scale(0.85); -ms-transform: scale(0.85); -o-transform:scale(0.85); transform: scale(0.85); -webkit-transition: all 0.5s; -o-transition: all 0.5s; -moz-transition: all 0.5s; transition: all 0.5s; border-radius: 0.2rem; pointer-events: unset; } .swiper-slide-active .poster-img { -webkit-transform: scale(1); -moz-transform: scale(1); -ms-transform: scale(1); -o-transform: scale(1); transform: scale(1); } .poster-tips{ position: absolute; font-size:0.24rem; color: #999; z-index: 9999; bottom: 0.3rem; right: 0.6rem; } </style> </head> <body> <div id="app" class="vueBox" v-cloak> <div class="plan-finish-header"> <div class="plan-finish-bg"></div> </div> <div class="plan-finish-calendar mtop1"> <div class="calendar"> <!-- 年份 月份 --> <ul class="month bottom-line"> <!--点击会触发pickpre函数,重新刷新当前日期 --> <li class="arrow" @click="pickPre(currentYear,currentMonth)"> <i class="mintuifont mintui-arrowright arrowleft"></i> </li> <li class="year-month"> <span v-text="currentYear+'年'+currentMonth+'月'"></span> </li> <li class="arrow" @click="pickNext(currentYear,currentMonth)"> <i class="mintuifont mintui-arrowright"></i> </li> </ul> <!-- 星期 --> <ul class="weekdays"> <li>日</li> <li>一</li> <li>二</li> <li>三</li> <li>四</li> <li>五</li> <li>六</li> </ul> <!-- 日期 --> <ul class="days bottom-line"> <li v-for="day in days" @click="dayCheck(d.........完整代码请登录后点击上方下载按钮下载查看
网友评论0