是否可以在不使用Javascript的情况下在页面加载时使用CSS3过渡动画?
您 可以 在页面加载时运行 CSS 动画,而无需使用任何JavaScript;您只需要使用 CSS3关键帧即可 。
让我们看一个例子…
这是仅使用 CSS3 的导航菜单滑入位置的演示:
@keyframes slideInFromLeft {
0% {
transform: translateX(-100%);
}
100% {
transform: translateX(0);
}
}
header {
/* This section calls the slideInFromLeft animation we defined above */
animation: 1s ease-out 0s 1 slideInFromLeft;
background: #333;
padding: 30px;
}
/* Added for aesthetics */ body {margin: 0;font-family: "Segoe UI", Arial, Helvetica, Sans Serif;} a {text-decoration: none; display: inline-block; margin-right: 10px; color:#fff;}
<header>
<a href="#">Home</a>
<a href="#">About</a>
<a href="#">Products</a>
<a href="#">Contact</a>
</header>
分解…
这里的重要部分是关键帧动画,我们称之为slideInFromLeft
…
@keyframes slideInFromLeft {
0% {
transform: translateX(-100%);
}
100% {
transform: translateX(0);
}
}
…这基本上是说:“开始时,标题将离开屏幕的左侧边缘的整个宽度,而结尾将位于适当位置”。
第二部分是调用该slideInFromLeft
动画:
animation: 1s ease-out 0s 1 slideInFromLeft;
上面是速记版本,但是为了清楚起见,这里是详细版本:
animation-duration: 1s; /* the duration of the animation */
animation-timing-function: ease-out; /* how the animation will behave */
animation-delay: 0s; /* how long to delay the animation from starting */
animation-iteration-count: 1; /* how many times the animation will play */
animation-name: slideInFromLeft; /* the name of the animation we defined above */
您可以做各种有趣的事情,例如滑动内容或吸引人们注意区域。
定义 基于animejs封装的React组件。 图片展示 代码演示 import Anime from 'pile/dist/components/anime' const {CssTransform} = Anime let moveAlone = { targets: '.anime-move-demo-alone', left: '240px', backgroundColo
.animated_div { width:60px; height:40px; background:#92B901; color:#ffffff; position:absolute; font-weight:bold; font-size:15px; padding:10px; float:left; margin:5px; -webkit-transition:-webkit-transf
问题内容: 我想淡出一个元素(将其不透明度转换为0),然后在完成后从DOM中删除该元素。 在jQuery中,这很简单,因为您可以指定动画完成后要执行的“删除”操作。但是,如果我希望使用CSS3过渡进行动画处理,是否可以知道过渡/动画何时完成? 问题答案: 对于过渡,您可以使用以下内容通过jQuery检测过渡的结束: 对于动画,它非常相似: 请注意,您可以将所有浏览器前缀的事件字符串同时传递到bin
问题内容: 元素是否触发了任何事件来检查css3转换是否已开始或结束? 问题答案: W3C CSS过渡草案 CSS Transition的完成将生成相应的DOM事件。将为每个经历过渡的属性触发一个事件。这使内容开发人员可以执行与转换完成同步的操作。 要确定转换何时完成,请为在转换结束时发送的DOM事件设置一个JavaScript事件监听器函数。该事件是WebKitTransitionEvent的实
问题内容: 我对css3 transition属性的渲染速度有疑问。 假设我有许多要素: 使用一个声明将所有这些元素的所有转换作为目标更有效。但是我的问题是:针对每个元素的特定过渡属性,在动画渲染的平滑度和快速度方面是否“更快”?例如: 我这样做的逻辑是,即使一个元素只有一个属性,css的“引擎”是否必须搜索“所有”过渡属性,也可能会减慢速度。 有谁知道是这样吗?谢谢! 问题答案: 是的,使用可能
问题内容: 我正在尝试在纯CSS中实现“淡出”效果。我确实在网上研究了几种解决方案,但是,在在线阅读文档后,我试图弄清为什么幻灯片动画不起作用。有指针吗? 问题答案: 您可以改用转换: