200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > Angular 使用DOM对象实现CSS3侧边栏动画

Angular 使用DOM对象实现CSS3侧边栏动画

时间:2022-04-17 15:25:42

相关推荐

Angular 使用DOM对象实现CSS3侧边栏动画

首先我们使用AngularCLI创建一个组件【aside】,创建命令如下:

ng generate component components/aside

接下来我们在创建好的组件【ponent.html】编写如下代码:

<section><h3>DOM操作CSS3页面动画</h3><aside id="aside">我是侧边栏</aside><button (click)="showAside()">展开</button> &nbsp;<button (click)="hideAside()">隐藏</button></section>

开始编写样式,分别在组件【ponent.css】和 ng 框架全局样式【styles.css】文件中编写如下css:

//1.组件【ponent.css】样式#aside{width: 200px;height: 100%;position: absolute; /* 绝对定位 */background-color: #000;color: #fff;right: 0px;top: 0px;transform: translate(100%,0); /*css3: 动画,X轴100%隐藏,Y轴不变 */transition: all 1s; /* 动画显示过度1s */}

//2.ng 框架全局样式【styles.css】body{width: 100%;overflow: hidden; /* 让底部下边框滚动条超出部分影藏 */}

最后我们在组件【ponent.ts】中编写页面按钮【展开】和【影藏】的点击事件:

//显示showAside():void{//原生js获取dom节点var asideDom:any = document.getElementById('aside');asideDom.style.transform = 'translate(0,0)';//asideDom.style.setProperty('transform','translate(0,0)'); //等效代码}//影藏hideAside():void{//原生js获取dom节点var asideDom:any = document.getElementById('aside');asideDom.style.transform = 'translate(100%,0)';//asideDom.style.setProperty('transform','translate(100%,0)'); //等效代码}

以上就完成一个简单的侧边栏动画效果(默认影藏),演示效果如下:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。