**完整案例在下方**

1.分析

如下图所示, 一共8屏, 当前在第2屏上,fullpage.js 会在当前可视屏的最外层div上,插入一个active的class,根据框架添加外层的active动态添加动画.

2.滑入 添加动画

代码如下展示,根据这个active的class添加动画,slideInDown 为滑入当前屏的动画效果

/*上下滑动动画 by bing*/
.animatedslideInDown {animation-duration: 2s;animation-fill-mode: both;
}
@keyframes slideInDown {0% {-webkit-transform: translate3d(0, -100%, 0);-ms-transform: translate3d(0, -100%, 0);transform: translate3d(0, -100%, 0);visibility: visible;}100% {-webkit-transform: translate3d(0, 0, 0);-ms-transform: translate3d(0, 0, 0);transform: translate3d(0, 0, 0);}
}//注意中间空格 目的:给active下面的slideInDown 添加动画slideInDown
//滑入时 动画
.active .slideInDown {animation-name: slideInDown;
}

3.滑出 添加动画

滑出会撤掉当前插在div上的active的class, hidden为滑出当前屏的动画效果,

注意hidden 与 slideInDow 在css中的位置,非常重要

原理:

当滑到当前屏时:因为css顺序加载样式, 先加载动画classhidden ,再加载滑入时候的动画slideInDow

此时hidden 中的animation-name属性值,被 slideInDow中的animation-name属性值替换成"slideInDown". 如下图所示

当准备滑出当前屏时:当前屏最外层div中acitve被撤掉,.active 下的.slideInDown无法找到,导致当初hidden 中被替换的animation-name属性值重新被激活.会重新执行hidden的动画行为,如下图所示

如下代码所示

/*上下滑动动画 by bing*/
.animatedslideInDown {animation-duration: 2s;animation-fill-mode: both;
}//滑出的动画
.animatedslideInDown.hidden{-webkit-animation-duration: 2s;animation-duration: 2s;animation-name: fadeOutUp ;
}
@keyframes slideInDown {0% {-webkit-transform: translate3d(0, -100%, 0);-ms-transform: translate3d(0, -100%, 0);transform: translate3d(0, -100%, 0);visibility: visible;}100% {-webkit-transform: translate3d(0, 0, 0);-ms-transform: translate3d(0, 0, 0);transform: translate3d(0, 0, 0);}
}//注意中间空格 目的:给active下面的slideInDown 添加动画slideInDown
//滑入时 动画
.active .slideInDown {animation-name: slideInDown;
}// 往上淡化退出 动画
@keyframes fadeOutUp {0% {opacity: 1;}100% {opacity: 0;-webkit-transform: translate3d(0, -100%, 0);-ms-transform: translate3d(0, -100%, 0);transform: translate3d(0, -100%, 0);}
}

4.完整案例

<!--  demo案例完整代码 by bing-->
<template><div><full-page :options="options"><div class="section section1"><h1>第一屏</h1></div><div class="section section1"><h1 class="animatedslideInDown slideInDown hidden">第二屏</h1></div><div class="section section1"><h1>第三屏</h1></div></full-page></div>
</template><script>
export default {name: "",components: {},data() {return {options: {licenseKey: "OPEN-SOURCE-GPLV3-LICENSE",navigationPosition: "left",scrollBar: false,afterLoad: this.afterLoad,verticalCentered: false,navigation: true,},};},
};
</script>
<style scoped lang="scss">
/*上下滑动动画 by bing*/
.animatedslideInDown {animation-duration: 2s;animation-fill-mode: both;
}
//滑出的动画
.animatedslideInDown.hidden {-webkit-animation-duration: 2s;animation-duration: 2s;animation-name: fadeOutUp;
}//注意中间空格 目的:给active下面的slideInDown 添加动画slideInDown
//滑入的动画
.active .slideInDown {animation-name: slideInDown;
}/*上下滑动 进入动画 by bing*/
@keyframes slideInDown {0% {-webkit-transform: translate3d(0, -100%, 0);-ms-transform: translate3d(0, -100%, 0);transform: translate3d(0, -100%, 0);visibility: visible;}100% {-webkit-transform: translate3d(0, 0, 0);-ms-transform: translate3d(0, 0, 0);transform: translate3d(0, 0, 0);}
}
// 往上淡化 退出动画
@keyframes fadeOutUp {0% {opacity: 1;}100% {opacity: 0;-webkit-transform: translate3d(0, -100%, 0);-ms-transform: translate3d(0, -100%, 0);transform: translate3d(0, -100%, 0);}
}
</style>

***附平时常用的动画库 网站 CSS3动画代码大集合 - 这是一个能方便找到CSS动画代码片段的地方

fullpage.js 滑入滑出滚屏动画, 纯css方式。利用css权重,无需js操作dom相关推荐

  1. 原生js实现轮播图-滑入滑出效果

    滑入滑出轮播图 <!DOCTYPE html> <html lang="en"> <head><meta charset="UT ...

  2. 用原生js完成鼠标点击显示滑入滑出效果

    最近用原生js做项目练手,自己尝试做了下,可以直接复制代码看效果 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta ch ...

  3. JS 从屏幕上下左右滑入滑出效果

    从屏幕上下左右滑入滑出效果,代码比较粗糙,但是效果已实现 需要注意的是,从屏幕右边和下边滑入的时候,需要给滑动的容器外面再加一个容器,加样式 position: fixed; 让它 固定定位,否则页面 ...

  4. android底部滑出view,Android CoordinatorLayout与NestedScrollView基于Behavior几行代码实现底部View滑入滑出...

    Android CoordinatorLayout与NestedScrollView基于Behavior几行代码实现底部View滑入滑出 在CoordinatorLayout的Behavior出现之前 ...

  5. css上滑事件,css transition 实现滑入滑出

    transition是css最简单的动画. 通常当一个div属性变化时,我们会立即看的变化,从旧样式到新样式是一瞬间的,嗖嗖嗖!!! 但是,如果我希望是慢慢的从一种状态,转变成另外一种状态,怎么办?  ...

  6. jQuery学习笔记系列(一)——入口函数,jQuery对象和DOM对象,jQuery选择器、样式操作、效果(显示隐藏、滑入滑出、淡入淡出、自定义动画、停止动画队列)

    day01 - jQuery 学习目标: 能够说出什么是 jQuery 能够说出 jQuery 的优点 能够简单使用 jQuery 能够说出 DOM 对象和 jQuery 对象的区别 能够写出常用的 ...

  7. 在 jQuery 中使用滑入滑出动画效果,实现二级下拉导航菜单的显示与隐藏效果

    查看本章节 查看作业目录 需求说明: 在 jQuery 中使用滑入滑出动画效果,实现二级下拉导航菜单的显示与隐藏效果 用户将光标移动到"最新动态页"或"帮助查询" ...

  8. 实现元素的滑入滑出效果

    文章目录 CSS动画 Demo.vue,使用transition Demo.vue,使用transition,且自定义name Demo.vue,使用transition,且自定义name,且使用属性 ...

  9. div 鼠标移入滑入滑出

    效果:原始样子 当鼠标移入div向右滑出: 当鼠标移开,div向左滑入: //1.先设置一个div,里面放入一张图片, //注意div样式里需设置 position:absolute;必须设置 //原 ...

最新文章

  1. 今年CVPR,我们填补了3D场景布局数据集空白,并向全世界开源!
  2. 世界首批智能音箱AI IQ测试报告,小米、京东和阿里初步PK
  3. python count函数时间复杂度_Python(算法)-时间复杂度和空间复杂度
  4. springboot学习笔记:12.解决springboot打成可执行jar在linux上启动慢的问题
  5. 露雨资源库(第一个.net2.0软件)二
  6. Effective Java之覆盖equal时要遵守通用约定(八)
  7. Phoenix+Hbase二级索引
  8. css禁止背景图拉伸_html-css控制背景图全屏拉伸不重复显示
  9. C#学习笔记——类的继承
  10. PSVR透露下一步计划,不做内容改做声控
  11. Google提供的ADB工具包下载地址
  12. MATLAB函数unidrnd简介
  13. 计算机网络中的所谓资源是指硬件软件资源,计算机网络试题..doc
  14. html5视屏教程地址
  15. 华硕重装后进入bios_华硕笔记本重装系统如何设置bios
  16. order by、distribute by、sort by、group by、partition by
  17. 三个数差的平方公式推导过程_学懂因式分解 你只差这8个完全平方公式推导结论 立马见效...
  18. P2P技术详解(一):NAT详解——详细原理、P2P简介(转)
  19. RGB color model
  20. 计算机是如何工作的? ----李泽源

热门文章

  1. MATLAB循环画不同颜色的点方法
  2. elemen ui 单张图片上传,照片墙上传一张照片后隐藏后面的添加框
  3. 鲸鱼算法优化变分模态分解(VMD)包络熵和参数的特征提取及MATLAB代码实现
  4. 浅析http协议、cookies和session机制、浏览器缓存
  5. 学java开展的活动,开始一项新活动
  6. 高达台词数据库(gundam-lines-database)
  7. transformer算法解析
  8. 携号转网或将最不利于中国联通
  9. 公众号留言文章页评论功能如何开通,最新教学,公众平台订阅号服务号留言评论功能快速申请获得方式看这里
  10. 动画基础2 -- 插值器与估值器