使用css的transition属性实现抽屉功能

需求

使用css手写一个抽屉,并且不能遮挡住原来的页面

效果:(录的gif有点卡,实际情况很丝滑)

实现代码:

<template><div class="dashboard-container"><div class="mainBox"></div><div id="drawerRight"><div class="iconDiv" @click="expandFn">展开</div></div></div>
</template><script>
export default {name: "drawer",data() {return {};},methods: {expandFn() {var Div = document.querySelector("div#drawerRight");var Btn = document.querySelector(".iconDiv");var mainDiv = document.querySelector(".mainBox");if (Btn.innerHTML === "展开") {Btn.innerHTML = "收起";Div.style.right = "0";mainDiv.style.width = "80%";} else if (Btn.innerHTML === "收起") {Div.style.right = "-15.5%";Btn.innerHTML = "展开";mainDiv.style.width = "95%";}},},
};
</script><style lang="scss" scoped>
.dashboard {&-container {margin: 30px;height: calc(100vh - 60px);}&-text {font-size: 30px;line-height: 46px;}
}
.mainBox {width: 95%;height: 80%;position: absolute;border: 1px dashed #0c99e6;transition: width linear 0.5s;}
#drawerRight {position: relative;width: 16%;height: 80%;background-color: rgb(225, 216, 233) !important;padding: 20px;border-radius: 4px;position: absolute;right: -15.5%;transition: right linear 0.5s;.iconDiv {position: absolute;right: 100%;top: 45%;width: 30px;height: 80px;text-align: center;padding: 20px 5px;background-color: #0c99e6;color: #ffffff;border-radius: 4px;text-align: center;transition: right linear 0.5s;cursor: pointer;i {position: relative;top: 50%;}}
}
</style>

知识点:

1、这里主要使用了transition属性,transition属性是css3中的一个重要属性,可以为一个元素在不同样式之间变化添加补间动画。只需要定义开始状态和结束状态,就可以为我们添加补间动画。相较于传统的js实现的动画,transition属性实现的动画效果更细腻而且内存开销小。

2、transition属性有4个基本要素,分别是要过度的属性,动画时长,动画演变速度,延迟时间

3、transition可以过渡的属性有:

(1)所有数值属性都可以参与过度,比如width,height,left,top,border-radius
(2)背景颜色和文字颜色都可以过渡
(3)所有变形(包括2D和3D变换)都可以过渡

4、这里还使用了js原生写法,具体讲解可以看另一篇文章:前端基础知识--Document的常用属性和常用函数_document选择器-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/502933.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python模型训练

目录 1、新建模型 train_model.py 2、运行模型 &#xff08;1&#xff09;首先会下载data文件库 &#xff08;2&#xff09;完成之后会开始训练模型&#xff08;10次&#xff09; 3、 训练好之后&#xff0c;进入命令集 4、输入命令&#xff1a;python -m tensorboard.ma…

数据中心IT设备硬件智能化运维管理探索

工业和信息化部日前出台《新型数据中心发展三年行动计划》&#xff0c;统筹推进新型数据中心发展&#xff0c;构建以新型数据中心为核心的智能算力生态体系&#xff0c;发挥对数字经济的赋能和驱动作用。新型数据中心是以5G、工业互联网、云计算、人工智能等应用需求为牵引&…

EMO在哪体验?阿里对口型视频生成工具EMO下载地址?阿里巴巴新模型EMO的技术原理

这几天&#xff0c;阿里的对口型视频生成工具EMO火了。根据官方宣传&#xff0c;EMO只需要上传一张图片和一段音频就可以一键生成对口型视频&#xff0c;而且视频中的嘴型还可以与声音匹配。这项技术支持多语言、对话、唱歌以及快速语速的适配&#xff0c;但也可能成为制造虚假…

web学习笔记(二十一)

目录 1.构造函数创建对象 1.1规则 1.2 new关键字调用构造函数时&#xff0c;函数内部做了什么事情&#xff1f; 1.3总结 2.混合模式创建对象 3.JavaScript 继承---借助构造函数 4.原型链 4.1原型链实现方法继承 5.完美的组合继承 6.call方法的使用 1.构造函数创建对象…

端游如何防破解

在2023年这个游戏大年中&#xff0c;诸多热门大作涌现&#xff0c;作为世界级IP哈利哈利波特的衍生游戏——《霍格沃茨之遗》毫无悬念地成为2023年游戏圈的首款爆款作品&#xff0c;斩获了一众玩家的青睐。 在众多光环的加持下&#xff0c;《霍格沃茨之遗》很快被著名游戏破解…

leetcode 热题 100_移动零

题解一&#xff1a; 双指针遍历&#xff1a;将非零的值往数组前端依次放置&#xff0c;将放置之后数组后端多余的位置都置为0&#xff0c;参考下图&#xff08;来源. - 力扣&#xff08;LeetCode&#xff09;&#xff09; class Solution {public void moveZeroes(int[] nums)…

数据可视化原理-腾讯-热力图

在做数据分析类的产品功能设计时&#xff0c;经常用到可视化方式&#xff0c;挖掘数据价值&#xff0c;表达数据的内在规律与特征展示给客户。 可是作为一个产品经理&#xff0c;&#xff08;1&#xff09;如果不能够掌握各类可视化图形的含义&#xff0c;就不知道哪类数据该用…

哪个有名的工具可以安全记事 私密记事本笔记推荐

在这个数字化的时代&#xff0c;我们的生活已经离不开各种记事工具。它们帮助我们记录生活中的点点滴滴&#xff0c;无论是工作上的重要事项&#xff0c;还是个人的私密心情。然而&#xff0c;当我在寻找一个能够安心记录私密事情的工具时&#xff0c;安全性成为了我最关心的因…

CentOs的yum报错: except KeyboardInterrupt, e:

1.报错 File “/bin/yum”, line 30 except KeyboardInterrupt, e: ^^^^^^^^^^^^^^^^^^^^ 2.原因&#xff1a;yum需要用python2编译&#xff0c;如果服务器安装的是python3.6并作为默认编译器的话&#xff0c;就会出现这个错误。 3.解决方法&#xff1a;whereis python 4.修改y…

【测试工具】Fiddler

1.Fiddler简介 Fiddler是位于客户端和服务器端的HTTP代理&#xff0c;能够记录客户端和服务器之间的所有 HTTP请求&#xff0c;是web调试的利器。既然是代理&#xff0c;也就是说&#xff1a;客户端的所有请求都要先经过Fiddler&#xff0c;然后转发到相应的服务器&#xff0c…

JS利用Worker多线程大文件切片上传

在做前端上传时&#xff0c;会遇到上传大文件&#xff0c;大文件就要进行分片上传&#xff0c;我们整理下思路&#xff0c;实现一个分片上传&#xff0c;最终我们要拿到每一个分片的hash值&#xff0c;index 分片索引&#xff0c;以及分片blob&#xff0c;如下&#xff1a; 一…

【Web安全靶场】sqli-labs-master 54-65 Challenges 与62关二分法和like模糊搜索

sqli-labs-master 54-65 Challenges 其他关卡和靶场见专栏… 文章目录 sqli-labs-master 54-65 Challenges第五十四关-联合注入第五十五关-联合注入第五十六关-联合注入第五十七关-联合注入第五十八关-报错注入第五十九关-报错注入第六十关-报错注入第六十一关-报错注入第六十…