原文地址:Animation Principles for the Web
本文转自简书
作为前端的设计师和工程师,我们用 CSS 去做样式、定位并创建出好看的网站。我们经常用 CSS 去添加页面的运动过渡效果甚至动画,但我们经常做的东西不会超过这些。
动效是一个有助于访客和消费者理解我们设计的强有力工具。这里有些原则能最大限度地应用在我们的工作中。
迪士尼经过基础工作练习的长时间累积,在 1981 年出版的 The Illusion of Life: Disney Animation 一书中发表了动画的十二个原则 (12 Principles of Animation) 。这些原则描述了动画能怎样用于让观众相信自己沉浸在现实世界中。
在本文中,我会逐个介绍这十二个原则,并讨论它们怎样运用在网页中。你能在 Codepen 找到它们全部的开源HTML和CSS代码。
挤压和拉伸 (Squash and stretch)
这是物体存在质量且运动时质量保持不变的概念。当一个球在弹跳时,碰击到地面会变扁,恢复的时间会越来越短。
创建对象的时候最有用的方法是参照实物,比如人、时钟和弹性球。
当它和网页元件一起工作时可能会忽略这个原则。DOM 对象不一定和实物相关,它会按需要在屏幕上缩放。例如,一个按钮会变大并变成一个信息框,或者错误信息会出现和消失。
尽管如此,挤压和伸缩效果可以为一个对象增加实物的感觉。甚至一些形状上的小变化就可以创造出细微但抢眼的效果。
Codepen 上的源代码
预备动作 (Anticipation)
运动不倾向于突然发生。在现实生活中,无论是一个球在掉到桌子前就开始滚动,或是一个人屈膝准备起跳,运动通常有着某种事先的累积。
我们能用它去让我们的过渡动画显得更逼真。预备动作可以是一个细微的反弹,帮人们理解什么对象将在屏幕中发生变化并留下痕迹。
例如,悬停在一个元件上时可以在它变大前稍微缩小,在初始列表中添加额外的条目来介绍其它条目的移除方法。
Codepen 上的源代码
演出布局 (Staging)
演出布局是确保对象在场景中得以聚焦,让场景中的其它对象和视觉在主动画发生的地方让位。这意味着要么把主动画放到突出的位置,要么模糊其它元件来让用户专注于看他们需要看的东西。
在网页方面,一种方法是用 model 覆盖在某些内容上。在现有页面添加一个遮罩并把那些主要关注的内容前置展示。
另一种方法是用动作。当很多对象在运动,你很难知道哪些值得关注。如果其它所有的动作停止,只留一个在运动,即使动得很微弱,这都可以让对象更容易被察觉。
还有一种方法是做一个晃动和闪烁的按钮来简单地建议用户比如他们可能要保存文档。屏幕保持静态,所以再细微的动作也会突显出来。
Codepen 上的源代码
连续运动和姿态对应 (Straight-Ahead Action and Pose-to-Pose)
连续运动是绘制动画的每一帧,姿态对应是通常由一个 assistant 在定义一系列关键帧后填充间隔。
大多数网页动画用的是姿态对应:关键帧之间的过渡可以通过浏览器在每个关键帧之间的插入尽可能多的帧使动画流畅。
有一个例外是定时功能step。通过这个功能,浏览器 "steps" 可以把尽可能多的无序帧串清晰。你可以用这种方式绘制一系列图片并让浏览器按顺序显示出来,这开创了一种逐帧动画的风格。
Codepen 上的源代码
跟随和重叠动作 (Follow Through and Overlapping Action)
事情并不总在同一时间发生。当一辆车从急刹到停下,车子会向前倾、有烟从轮胎冒出来、车里的司机继续向前冲。
这些细节是跟随和重叠动作的例子。它们在网页中能被用作帮助强调什么东西被停止,并不会被遗忘。例如一个条目可能在滑动时稍滑微远了些,但它自己会纠正到正确位置。
要创造一个重叠动作的感觉,我们可以让元件以稍微不同的速度移动到每处。这是一种在 iOS 系统的视窗 (View) 过渡中被运用得很好的方法。一些按钮和元件以不同速率运动,整体效果会比全部东西以相同速率运动要更逼真,并留出时间让访客去适当理解变化。
在网页方面,这可能意味着让过渡或动画的效果以不同速度来运行。
Codepen 上的源代码
缓入缓出 (Slow In and Slow Out)
对象很少从静止状态一下子加速到最大速度,它们往往是逐步加速并在停止前变慢。没有加速和减速,动画感觉就像机器人。
在 CSS 方面,缓入缓出很容易被理解,在一个动画过程中计时功能是一种描述变化速率的方式。
使用计时功能,动画可以由慢加速 (ease-in)、由快减速 (ease-out),或者用贝塞尔曲线做出更复杂的效果。
Codepen 上的源代码
弧线运动 (Arc)
虽然对象是更逼真了,当它们遵循「缓入缓出」的时候它们很少沿直线运动——它们倾向于沿弧线运动。
我们有几种 CSS 的方式来实现弧线运动。一种是结合多个动画,比如在弹力球动画里,可以让球上下移动的同时让它右移,这时候球的显示效果就是沿弧线运动。
另外一种是旋转元件,我们可以设置一个在对象之外的原点来作为它的旋转中心。当我们旋转这个对象,它看上去就是沿着弧线运动。
Codepen 上的源代码:动画1、动画2
次要动作 (Secondary Action)
虽然主动画正在发生,次要动作可以增强它的效果。这就好比某人在走路的时候摆动手臂和倾斜脑袋,或者弹性球弹起的时候扬起一些灰尘。
在网页方面,当主要焦点出现的时候就可以开始执行次要动作,比如拖拽一个条目到列表中间。
Codepen 上的源代码
时间节奏 (Timing)
动画的时间节奏是需要多久去完成,它可以被用来让看起来很重的对象做很重的动画,或者用在添加字符的动画中。
这在网页上可能只要简单调整 animation-duration 或 transition-duration 值。
这很容易让动画消耗更多时间,但调整时间节奏可以帮动画的内容和交互方式变得更出众。
Codepen 上的源代码
夸张手法 (Exaggeration)
夸张手法在漫画中是最常用来为某些动作刻画吸引力和增加戏剧性的,比如一只狼试图把自己的喉咙张得更开地去咬东西可能会表现出更恐怖或者幽默的效果。
在网页中,对象可以通过上下滑动去强调和刻画吸引力,比如在填充表单的时候生动部分会比收缩和变淡的部分更突出。
Codepen 上的源代码
扎实的描绘 (Solid drawing)
当动画对象在三维中应该加倍注意确保它们遵循透视原则。因为人们习惯了生活在三维世界里,如果对象表现得与实际不符,会让它看起来很糟糕。
如今浏览器对三维变换的支持已经不错,这意味着我们可以在场景里旋转和放置三维对象,浏览器能自动控制它们的转换。
Codepen 上的源代码
吸引力 (Appeal)
吸引力是艺术作品的特质,让我们与艺术家的想法连接起来。就像一个演员身上的魅力,是注重细节和动作相结合而打造吸引性的结果。
精心制作网页上的动画可以打造出吸引力,例如 Stripe 这样的公司用了大量的动画去增加它们结账流程的可靠性。
Codepen 上的源代码
参考地址:http://codepen.io/
相关推荐
设计师们在创作网页动画时,需要综合考虑视觉元素、交互性、功能性以及美学原则,以实现信息传达和用户体验的双重目标。 总的来说,三维动画和网页动画虽然都属于数字动画的范畴,但它们在审美追求上有着显著的差异...
本课程作业聚焦于“网页动画与三维网页设计”,旨在帮助学生掌握如何在网页中巧妙地融入动态元素和立体视觉效果。 一、网页动画 1. CSS3动画:CSS3是现代网页设计的重要组成部分,它提供了许多动画属性,如`...
网页动画设计是构建动态网页的重要组成部分,它能够增强用户体验,吸引访客的注意力,并有效地传达信息。在网页设计中,GIF(Graphics Interchange Format)动画是一种常用的格式,因为其支持透明度、循环播放和相对...
在IT行业中,Flash是一款历史悠久且曾经非常流行的网页动画制作工具,尤其在20世纪末到21世纪初,它在创建交互式网页内容、游戏和动态网页设计方面扮演了重要角色。本篇将深入探讨“Flash网页动画制作”这一主题,...
如何有效利用网页动画素材: 1. **适度使用**:避免过多或过于复杂的动画,以免造成页面混乱或拖慢加载速度。 2. **与内容匹配**:动画应与网站内容相协调,增强信息传达,而不是分散注意力。 3. **考虑性能**:优化...
《FLASH 4网页动画设计》是一本专注于利用Adobe Flash 4工具进行网页动画创作的专业教程。Flash是一款强大的矢量图形和交互式媒体开发工具,它在互联网早期阶段极大地推动了动态网页的发展,使得网页不再局限于静态...
在实际应用中,网页设计师应遵循以下原则: - 保持动画简洁:避免过于复杂或冗长的动画,以免分散用户注意力。 - 适度使用:过多的动画可能会造成页面混乱,影响加载速度,所以要恰当地在关键交互点添加动画。 - 与...
网页加载动画效果(Loading)是用户体验设计中的一个重要组成部分,它在网页内容还未完全加载时向用户展示,以提供视觉...通过理解这些技术和设计原则,开发者可以创造出既美观又实用的加载动画,提高网站的用户体验。
网页模板是预先设计好的页面布局,通常包括头部、主体和底部等基本部分,它们遵循一定的设计原则和标准,可以帮助非专业设计师快速创建出专业级别的网站。通过使用网页模板,初学者和企业可以节省成本,快速上线,而...
4. **设计原则**:一个优秀的loading动画应简洁、直观,与品牌形象和用户体验保持一致。颜色选择、大小、速度和样式都需精心设计,避免干扰用户视线,同时传达出进度信息。 5. **性能优化**:由于GIF文件可能会比较...
操作,如点击按钮、填写表单等,这些都离不开Flash动画技术的支持。...通过合理应用Flash动画,结合现代网页设计原则,可以创造出更具吸引力和功能性的网页,进一步推动网页设计领域的创新和发展。
JavaScript则提供了动态交互性,使网页能够响应用户的操作,例如动画效果、表单验证和时间序列控制。 在动漫网页设计中,界面设计至关重要。每个界面应具有与动漫主题相符的视觉元素,如角色插图、场景背景或者特定...
2. 设计原则:一个好的加载动画应该简洁、直观,并与品牌形象保持一致。设计师应考虑动画的视觉吸引力,确保其在各种背景和设备上都能清晰可见。此外,加载动画的持续时间也很关键,过长可能会让用户感到不耐烦,而...
网页设计师需要将视觉传达艺术设计、平面艺术设计、色彩设计、动画视频设计等多种艺术设计形式相结合,按照审美心理和视觉规律生动活泼、富有感染力的传达给受众。 网页设计的发展初始,设计师更偏重于技术层面的...
网站动画教程是一个旨在帮助用户掌握网页动画制作的资源集合,主要针对那些希望提升网页互动性和视觉效果的学习者。本教程可能包含一系列的视频、文本、图片或者代码示例,通过这些内容,用户能够深入理解如何在网页...
四、加载动画设计原则 1. 清晰易懂:动画应简洁明了,让用户一眼就能明白其含义。 2. 高度可见:加载动画应该位于页面的显著位置,确保用户能注意到它。 3. 与品牌相符:加载动画的设计应与网站的整体风格和品牌形象...
这种效果通常应用于网页或应用程序的导航菜单,尤其是当用户切换Tab时,通过动画过渡来增强用户感知和理解。下面将详细解释这个概念,并探讨实现这种效果的技术细节。 一、TAB组件基础 TAB组件是用户界面中的一个...
谷歌首页的动画效果是用户体验设计中的一个重要组成部分,它在用户打开网页时提供了视觉上的吸引力和交互性。这些动画不仅增加了网站的趣味性,也优化了用户的浏览体验。下面将详细介绍谷歌首页动画效果的相关知识点...
网页制作是信息技术领域中一个重要的实践技能,尤其对于学生来说,通过学习网页制作,不仅可以提升技术能力,还能增强创造力和表达力。这个“2011年学生个人关于青春的网页制作”项目,很可能是当年的一门课程作业,...