el-date-picker日期列表样式更换为完全不同的样式保证弹出日期弹窗的功能不变

html 复制代码
<div class="pRelative">
    <div>
        <el-date-picker 
            ref="dateBEDate"
            value-format="yyyy-MM-dd"    
            v-model="formAddMeal.startEndDate"
            type="datetimerange" 
            range-separator="至"
            start-placeholder="开始日期"
            end-placeholder="结束日期"
            align="right">
        </el-date-picker>
    </div>
    <div class="pAbsolute dateBox flex aCenter jsb cPointer" @click="cfDate">
        <div class="beginDate" v-show="!formAddMeal.startEndDate">开始日期</div>
        <div class="beginDate ed" v-show="formAddMeal.startEndDate">{{ formAddMeal.startEndDate[0] }}</div>
        <div class="flex aCenter">
            <div class="el-icon-arrow-right"></div>
            <div class="eDate" v-show="!formAddMeal.startEndDate">结束日期</div>
            <div class="beginDate ed" v-show="formAddMeal.startEndDate">{{ formAddMeal.startEndDate[1] }}</div>
        </div>
        <img :src="commonImgPath+'dateIcon.png'" alt="">
    </div>
</div>
javascript 复制代码
<script>
 export default{ 
    data(){
        return{
            commonImg:'',//图片的前缀,就是图上的那个日历小图标,忽略
             formAddMeal:{ 
                startEndDate:'',
                endDate:'',
                startDate:'', 
            }
        }
    },
    methods:{
        cfDate(){
            //触发日期组件的焦点事件,弹出选择日期弹窗
            this.$refs.dateBEDate.focus()
        }
    }
 } 
</script>
css 复制代码
.dateBox{
    padding:8px 23px 8px 12px; 
    font-size: 16px; 
    color: #333333;  
    width:310px;
    height:40px;
    box-shadow: 0px 0px 0px 2px rgba(178,178,178,0.22);
    border-radius: 2px 2px 2px;
    box-sizing: border-box;
    left:0;
    top:0;
    z-index:0;
    .beginDate{
        margin-right: 46px;
        &.ed{
            margin-right:0;
        }
    }
    .eDate{
        margin-left:2px;
    }
    img{
        width:18px;
        height:18px;
        margin-left:35px;
    }
}
.pRelative{
    position: relative;
}
.pAbsolute{
    position: absolute;
}
.cPointer{
    cursor: pointer;
}
.flex{
    display: flex;
}
.flexWrap{
    flex-wrap: wrap;
}
.aCenter{
    align-items: center;
}   
.jsb{
    justify-content: space-between;
}
相关推荐
Mr Xu_18 分钟前
告别冗长 switch-case:Vue 项目中基于映射表的优雅路由数据匹配方案
前端·javascript·vue.js
前端摸鱼匠25 分钟前
Vue 3 的toRefs保持响应性:讲解toRefs在解构响应式对象时的作用
前端·javascript·vue.js·前端框架·ecmascript
lang2015092836 分钟前
JSR-340 :高性能Web开发新标准
java·前端·servlet
好家伙VCC1 小时前
### WebRTC技术:实时通信的革新与实现####webRTC(Web Real-TimeComm
java·前端·python·webrtc
未来之窗软件服务2 小时前
未来之窗昭和仙君(六十五)Vue与跨地区多部门开发—东方仙盟练气
前端·javascript·vue.js·仙盟创梦ide·东方仙盟·昭和仙君
嘿起屁儿整2 小时前
面试点(网络层面)
前端·网络
VT.馒头2 小时前
【力扣】2721. 并行执行异步函数
前端·javascript·算法·leetcode·typescript
phltxy3 小时前
Vue 核心特性实战指南:指令、样式绑定、计算属性与侦听器
前端·javascript·vue.js
Byron07074 小时前
Vue 中使用 Tiptap 富文本编辑器的完整指南
前端·javascript·vue.js
css趣多多5 小时前
地图快速上手
前端