CSS Transition
1.基本用法:在CSS3引入Transition(过渡)这个概念之前,CSS是没有时间轴的。也就是说,所有的状态变化,都是即时完成。
img{
height:15px;
width:15px;
}
img:hover{
height: 450px;
width: 450px;
}
transition的作用在于,指定状态变化所需要的时间。图片放大的过程需要1秒。
img{
transition: 1s;
}
指定transition适用的属性,比如只适用于height。只有height的变化需要1秒实现,其他变化(主要是width)依然瞬间实现
img{
transition: 1s height;
}
2.transition-delay:
在同一行transition语句中,可以分别指定多个属性。这样一来,height和width的变化是同时进行的,跟不指定它们没有差别。
img{
transition: 1s height, 1s width;
}
让height先发生变化,等结束以后,再让width发生变化。实现这一点很容易,就是为width指定一个delay参数。width在1秒之后,再开始变化,也就是延迟(delay)1秒。
img{
transition: 1s height, 1s 1s width;
}
delay的真正意义在于,它指定了动画发生的顺序,使得多个不同的transition可以连在一起,形成复杂效果。
3.transition-timing-function:
transition的状态变化速度(又称timing function),默认不是匀速的,而是逐渐放慢,这叫做ease
img{
transition: 1s ease;
}
除了ease以外,其他模式还包括
(1)linear:匀速
(2)ease-in:加速
(3)ease-out:减速
(4)cubic-bezier函数:自定义速度模式
cubic-bezier,可以使用工具网站来定制。
img{
transition: 1s height cubic-bezier(.83,.97,.05,1.44);
}
代码会产生一个最后阶段放大过度、然后回缩的效果。
4.transition的各项属性
简写形式
img{
transition: 1s 1s height ease;
}
单独定义成各个属性
img{
transition-property: height;
transition-duration: 1s;
transition-delay: 1s;
transition-timing-function: ease;
}
5.transition的使用注意
(1)目前,各大浏览器(包括IE10)都已经支持无前缀的transition,所以transition已经可以很安全地不加浏览器前缀。
(2)不是所有的CSS属性都支持transition,完整的列表查看这里,以及具体的效果。
(3)transition需要明确知道,开始状态和结束状态的具体数值,才能计算出中间状态。比如,height从0px变化到100px,transition可以算出中间状态。但是,transition没法算出0px到auto的中间状态,也就是说,如果开始或结束的设置是height: auto,那么就不会产生动画效果。类似的情况还有,display: none到block,background: url(foo.jpg)到url(bar.jpg)等等。
6.transition的局限
transition的优点在于简单易用,但是它有几个很大的局限。
(1)transition需要事件触发,所以没法在网页加载时自动发生。
(2)transition是一次性的,不能重复发生,除非一再触发。
(3)transition只能定义开始状态和结束状态,不能定义中间状态,也就是说只有两个状态。
(4)一条transition规则,只能定义一个属性的变化,不能涉及多个属性。
CSS Animation就是为了解决这些问题而提出的。
- 浏览: 76882 次
- 性别:
相关推荐
同时,`transition`属性确保了样式变换的平滑过渡。 HTML5作为最新的超文本标记语言标准,提供了更多的语义化元素和API,使得开发者可以构建更丰富的交互式网页。在本实例中,可能使用了`<canvas>`元素来绘制动态的...
掌握CSS+Div只是网页设计的第一步,后续你还需要学习更高级的CSS3特性,如过渡(transition)、动画(animation)、Flexbox和Grid布局,以及JavaScript交互等,以提升网页的用户体验。 总结,这个CSS+Div入门教程为初学...
本次我们将深入探讨名为“TableFlipDemo”的iOS应用源码,通过分析其核心代码和实现机制,揭示Table Flip效果的奥秘。 首先,TableFlipDemo项目主要基于Swift或Objective-C语言构建,这取决于源码的具体版本。在iOS...
"CSS-master.zip"这个压缩包中,包含了一系列CSS的精彩示例,让我们一起深入探讨这些效果背后的奥秘。 首先,"充电效果"是网页中常见的一种动态表现形式,它通常用于页面加载或按钮激活时,给予用户一种即将开始...
4. **过渡和动画**:通过`transition`和`animation`,可以实现元素状态间的平滑过渡和自定义动画效果。 5. **响应式设计**:使用`media queries`来适应不同设备和屏幕尺寸,确保页面在任何环境下都能良好展示。 6. *...
作者徐宜生,以其丰富的经验和深厚的理论知识,将Android开发中的各种"神兵利器"娓娓道来,为读者揭示了Android开发中的诸多奥秘。 本书的核心知识点涵盖了以下几个方面: 1. **Android系统架构**:书中详细介绍了...
《全面解析:手机H5页面源码的奥秘与实践》 手机H5页面,作为移动互联网时代的重要组成部分,已经成为企业、个人展示品牌形象、提供互动服务的重要工具。本资源包包含40套精心设计的手机H5页面源码,旨在为开发者...
5. **过渡与动画**:CSS3的transition和animation属性允许我们创建平滑的过渡效果和复杂的动画,提升用户体验。 6. **选择器层级与优先级**:了解选择器的权重是至关重要的,ID选择器权重最高,接着是类、属性和...
新托福TPO资料深入探讨了自然界的奥秘,如“Groundwater”(地下水)章节解释了地下水的形成与重要性,以及它如何影响人类的生活;“The Origins of the Atmosphere”(大气起源)探讨了地球大气层的演变过程;...
23. **基态**(Ground State)、**激发态**(Excited State)、**跃迁**(Transition):描述电子的不同能量状态。 24. **手性**(Chirality):分子在空间中无法与其镜像完全重合的特性。 25. **化学键**...
此外,通过`transition`属性可以添加过渡动画,使得元素在状态改变时平滑过渡。 为了构建立体方块,我们需要为每个面创建单独的子元素(如`.side1`至`.side6`),并分别应用不同的3D转换。这些转换主要通过`...
而`transition`属性则可以平滑地改变元素的样式,如颜色、尺寸等,增加动态美感。"Brain_Demo"可能利用这些特性实现脑部结构的平滑过渡或动态展示。 接着,CSS3的动画功能是另一个强大的工具,通过`@keyframes`规则...
阿尔伯斯是20世纪重要的抽象艺术家之一,他的“向方形致敬”系列以其独特的构图和色彩理论著称,通过不同颜色和大小的正方形叠加,探索了视觉感知和色彩相互作用的奥秘。 在网页设计和开发领域,我们可以运用CSS...
下面,我们将深入探讨CSS的相关知识点,揭示其内在的奥秘。 首先,CSS是一种用于定义HTML或XML(包括如SVG、MathML等各种XML方言)文档呈现的样式语言。它允许我们将结构与表现分离,使网页设计更加灵活和易于维护...
"LucidIllustrations"项目以一种直观易懂的方式,帮助开发者和设计师深入理解CSS的奥秘。本文将基于项目"LucidIllustrations-main"中的内容,详细阐述CSS的核心概念、原理及其应用。 首先,我们来理解CSS的基本结构...
下面,让我们一起深入CSS的世界,揭示其中的奥秘。 CSS的核心功能是将结构化的HTML或XML文档与表现分离,使开发者能够更方便地控制页面的视觉样式。通过CSS,我们可以定义字体、颜色、间距、布局以及更复杂的动画和...
RL问题通常被定义为马尔可夫决策过程(Markov Decision Process,MDP),其中包含状态(State)、动作(Action)、奖励(Reward)和状态转移概率(Transition Probability)四个关键元素。 二、PyTorch在强化学习中...
7. **CSS动画与过渡**:`@keyframes` 用于创建自定义动画,而 `transition` 属性则可平滑地改变属性值,两者结合能打造丰富的用户体验。 8. **响应式设计**:媒体查询 (`@media`) 允许根据设备特性(如屏幕大小)...