網(wǎng)站建設(shè)網(wǎng)頁(yè)動(dòng)畫終極指南發(fā)布者:本站 時(shí)間:2022-03-21 16:03:56
動(dòng)畫是人類畢生的理想之一(如果像某些歷史學(xué)家相信的那樣)。這個(gè)理論源起于洞穴壁畫:在某些洞穴壁畫中,經(jīng)常見到一些生物被畫上遠(yuǎn)多于正常數(shù)量的肢體。
這背后有很多套理論。有些指出這很簡(jiǎn)單,因?yàn)樗囆g(shù)家們并沒有方法可以擦除這些肢體,于是將他們的錯(cuò)誤留在壁畫上,傳給了子孫。還有理論相信,這些是最早的試圖在靜止圖像中捕捉動(dòng)態(tài)的方法。我選擇相信后者。
還有比捕捉動(dòng)態(tài)更加自然的愿望了嗎?自然界的一切都在運(yùn)動(dòng)。人在行走,水在流動(dòng),植物開枝散葉,自然界唯一不變的就是變化,以一種運(yùn)動(dòng)的形式。有些在模糊中一閃而過(guò),有些則慢到難以察覺,但這些都在發(fā)生。
動(dòng)畫對(duì)于網(wǎng)頁(yè)設(shè)計(jì)師已經(jīng)不再新奇……它正在成為最基礎(chǔ)的交互設(shè)計(jì)效果。
動(dòng)畫就是變化,是一種運(yùn)動(dòng)。它是我們藝術(shù)創(chuàng)作中最接近真實(shí)反映生活的東西。這就是為什么人們總是說(shuō)“動(dòng)畫使我們的網(wǎng)站(或是演講,諸如此類)鮮活起來(lái)?!边@可能是陳詞濫調(diào)了,但這個(gè)詞很優(yōu)美地呈現(xiàn)了動(dòng)畫在網(wǎng)頁(yè)設(shè)計(jì)中的目的。
正確使用運(yùn)動(dòng)感,可以告訴用戶他們完成了某些操作。他們成功地與界面進(jìn)行了交互,引發(fā)了某些變化。
人們與真實(shí)物體互動(dòng)時(shí),也會(huì)觸發(fā)并體驗(yàn)到相同的感覺(至少是類似的感覺)。就某種程度而言,動(dòng)畫是擬物的。沒錯(cuò),我說(shuō)的就是擬物。
使用得當(dāng)時(shí),動(dòng)畫可以被設(shè)計(jì)成模仿真實(shí)世界的交互。我們似乎在原地打轉(zhuǎn)??赡芪覀儾粫?huì)再過(guò)多使用復(fù)雜的皮革紋理,但我們?nèi)匀辉趪L試效仿現(xiàn)實(shí)世界。
網(wǎng)頁(yè)動(dòng)畫簡(jiǎn)史
在進(jìn)入實(shí)用部分之前,我們看看互聯(lián)網(wǎng)上的動(dòng)畫是如何發(fā)展到今天(這么酷)的。最初一切都誕生于gif圖……
原來(lái).gif文件年齡甚至比我還大2歲。它們?cè)?987年被創(chuàng)造,正是早年我們剛知道(或多或少)互聯(lián)網(wǎng)的時(shí)候。因此開創(chuàng)了跳舞嬰兒的紀(jì)元,那些東西太可怕了,還是忘了好。
如果gif圖的流行告訴了我們什么,那就是人們想要將動(dòng)畫引入網(wǎng)頁(yè)中。在此提醒一下,多數(shù)人可能并沒有從改善可用性的方式考慮動(dòng)畫。一切都只是為了產(chǎn)生一點(diǎn)個(gè)性,表現(xiàn)一點(diǎn)生機(jī),與其他靜止的網(wǎng)頁(yè)區(qū)分開。
現(xiàn)在正是關(guān)注網(wǎng)頁(yè)動(dòng)畫與App動(dòng)畫的最佳時(shí)機(jī)。
當(dāng).gif文件的能力耗盡后,人們想要一種更好的方式,來(lái)向網(wǎng)站中添加動(dòng)畫。對(duì),聲音!聲音太棒了。如果人們打開你的網(wǎng)頁(yè),開始播放你最喜歡的歌曲,這得有多棒???要像真正的歌曲……而不是那種破爛電腦音樂,對(duì)吧?
是Flash讓我們艱難地學(xué)到了這個(gè)教訓(xùn)。但是別忘了Flash在它所處的年代是相當(dāng)驚艷的。實(shí)際上它是一種革新。它是一種進(jìn)步。它非常酷。
無(wú)論后來(lái)它被如何濫用,要知道Flash讓我們?cè)诨ヂ?lián)網(wǎng)中做一些從沒想過(guò)的事情。它拓寬了創(chuàng)意的視野,為人們?cè)谝粋€(gè)嶄新的行業(yè)創(chuàng)造了工作機(jī)會(huì),帶來(lái)了“網(wǎng)頁(yè)動(dòng)畫”和90年代最棒的東西(除了天堂):Flash游戲。甚至直到現(xiàn)在,我都覺得那些游戲使人入迷。
隨著時(shí)間推移,很多設(shè)計(jì)師轉(zhuǎn)移到基于Javascript的動(dòng)畫上,用于創(chuàng)造一些小東西,比如下拉菜單和其他導(dǎo)航元素。畢竟如果做得恰當(dāng)?shù)脑?,這更有利于SEO。其他人只用Javascript是因?yàn)?,那正是FrontPage和DreamWeaver調(diào)用按鈕圖片的方式。微小的進(jìn)步仍然是進(jìn)步。
00年代中旬,W3C已經(jīng)在努力將動(dòng)畫加入到CSS規(guī)范中。2009年,首份公開的CSS動(dòng)畫規(guī)范初稿就發(fā)布了。
如今呢?我們探索出了強(qiáng)制硬件渲染、CSS動(dòng)畫結(jié)合SVG文件、延伸基本動(dòng)畫功能的JavaScript庫(kù),等等。
現(xiàn)在我們正在探尋各種方式,不僅僅是為網(wǎng)站增添風(fēng)格。我們?cè)谠噲D改善可用性,告知并教育用戶,讓用戶更容易了解他們?cè)谧鍪裁础?br />
對(duì)于網(wǎng)頁(yè)設(shè)計(jì)師,動(dòng)畫不再是新奇事物。它成為了影視行業(yè)的基礎(chǔ),一種全新的敘事方式。對(duì)我們而言,它成為了有效交互設(shè)計(jì)的基礎(chǔ)。
網(wǎng)頁(yè)動(dòng)畫終極指南
現(xiàn)在正是關(guān)注網(wǎng)頁(yè)動(dòng)畫與App動(dòng)畫的最佳時(shí)機(jī)??萍忌袥]有完全成熟(什么時(shí)候會(huì)呢),也無(wú)法提供全方位支持(何時(shí)能夠呢),但我們?cè)谔綄ば碌姆绞綄⑺尸F(xiàn)在世人面前,無(wú)需通過(guò)插件或是專用代碼。
我們?cè)绞且蚤_放的動(dòng)畫標(biāo)準(zhǔn)為基礎(chǔ),越多的人就能首先看到。近年來(lái)人們專注于運(yùn)用動(dòng)畫驅(qū)動(dòng)交互,這是一件非常非常好的事情。
是時(shí)候成為先行者了。
網(wǎng)頁(yè)動(dòng)畫的種類
回到正題。我們?cè)谡務(wù)摰氖悄姆N動(dòng)畫?我的意思是,我說(shuō)了很多關(guān)于使用動(dòng)畫改善用戶界面的言論,那些究竟是什么意思?
很顯然,我們不能將動(dòng)畫效果隨手加于網(wǎng)頁(yè)元素之上,然后期盼它能提升轉(zhuǎn)化率。那太傻了。就像設(shè)計(jì)的所有其他方面,使用哪種動(dòng)畫,何時(shí)使用,這都需要仔細(xì)考慮。
網(wǎng)頁(yè)動(dòng)畫終極指南
實(shí)際細(xì)節(jié)與實(shí)現(xiàn)也是必須考慮的。如果你的動(dòng)畫過(guò)于耗費(fèi)資源,拖慢用戶的移動(dòng)設(shè)備,或者更糟的是拖慢他們的桌面設(shè)備,這就有問題了。很多問題。
我們由此入手,看看網(wǎng)頁(yè)上幾種典型的動(dòng)畫:
界面元素動(dòng)畫
我不知道這是不是最普遍的一類動(dòng)畫,不過(guò)我猜是的。它應(yīng)該獲此殊榮。在我的觀念中,這是最有用的動(dòng)畫類型。
正如我在介紹中說(shuō)的,這是一種讓用戶了解他們的操作(比如點(diǎn)擊)被記錄的動(dòng)畫。變化的發(fā)生需要他們的點(diǎn)擊來(lái)催化,無(wú)論是轉(zhuǎn)向另一個(gè)頁(yè)面,打開側(cè)邊欄或模態(tài)窗口,還是在客服窗口中發(fā)送電子郵件。
不是說(shuō)有反饋更好,而是如今反饋是必須的,這是個(gè)扁平化設(shè)計(jì)的世界。人們需要了解界面與裝飾物之間的區(qū)別。讓元素運(yùn)動(dòng)起來(lái),是簡(jiǎn)單微妙的交互方式,給予用戶他們所需的反饋。
它就像改變按鈕背景色或讓它跳動(dòng)那么簡(jiǎn)單。這個(gè)類型也包含了側(cè)邊欄菜單“滑入”頁(yè)面的動(dòng)畫,還有模態(tài)窗口放大顯現(xiàn)的動(dòng)畫。
網(wǎng)頁(yè)動(dòng)畫終極指南
等待動(dòng)畫
這個(gè)也是,同樣是為了給用戶提供反饋。這類動(dòng)畫,會(huì)在某些操作正在后臺(tái)進(jìn)行時(shí)呈現(xiàn)給用戶,你可不想讓他們等到崩潰。
這類動(dòng)畫的作用很久以前就得到了印證,就在圖形化用戶界面首次發(fā)明的時(shí)候。最早的方式是鼠標(biāo)指針變成沙漏,還有進(jìn)度條也是。Apple在某時(shí)刻采用了“旋轉(zhuǎn)的沙灘排球”,而windows則呈現(xiàn)了文件優(yōu)雅地從一個(gè)文件夾飛向另一個(gè)。
網(wǎng)頁(yè)動(dòng)畫終極指南
這些慣例第一時(shí)間就被網(wǎng)頁(yè)采用了,理由很充分。當(dāng)用戶開始疑惑正在發(fā)生什么時(shí),他們會(huì)一直點(diǎn)擊或點(diǎn)按。這是沮喪的一種表現(xiàn)。他們認(rèn)為這樣會(huì)讓進(jìn)度加快一點(diǎn)。
無(wú)論哪種方式,告訴用戶正在發(fā)生的事情,哪怕通過(guò)一個(gè)簡(jiǎn)單的進(jìn)度條,也能極大減輕精神負(fù)擔(dān)……即使對(duì)于我們這些使用電腦很久的用戶也是一樣。
Beegit是一款寫作應(yīng)用,我用它來(lái)撰寫和編輯這篇文章。它提供了一個(gè)便捷的“進(jìn)度圈”,告訴我圖片何時(shí)會(huì)上傳完成,在模態(tài)窗口的左上角可以看到:
網(wǎng)頁(yè)動(dòng)畫終極指南
講故事的動(dòng)畫
如今,用動(dòng)畫來(lái)講故事已經(jīng)超越了卡通。實(shí)際上,我要講的完全不是那些動(dòng)畫。而是那些被設(shè)計(jì)出來(lái)與用戶互動(dòng)(比如向下滾動(dòng))的網(wǎng)站,操作引發(fā)了動(dòng)畫,講述了故事。
有些普遍例子,那些頁(yè)面會(huì)在你眼前將產(chǎn)品“裝配”起來(lái),以此展現(xiàn)新產(chǎn)品。其他則更像卡通片,有個(gè)小卡通形象跟隨你到頁(yè)面的每個(gè)地方。
網(wǎng)頁(yè)動(dòng)畫終極指南
這些動(dòng)畫的作用……存在爭(zhēng)議。通常它們并沒有提升可用性的意圖,只是為了讓用戶印象深刻,為他們提供頁(yè)面主題相應(yīng)的環(huán)境。它們可能是在試圖呈現(xiàn)一件產(chǎn)品的工藝,或是分享打造這件創(chuàng)造物的經(jīng)歷。
動(dòng)畫能否做到這點(diǎn),取決于它們本身的質(zhì)量。是否過(guò)度影響了網(wǎng)站的性能,或是影響了頁(yè)面內(nèi)容本身。如果用戶在網(wǎng)站上找不到自己要的東西,世上所有的動(dòng)畫效果都救不了它。
有兩個(gè)案例我的確很喜歡,它們來(lái)自深諳此道品牌:Apple和Sony。
Mac Pro的頁(yè)面,致力于向下滾動(dòng)時(shí)精確呈現(xiàn)內(nèi)部構(gòu)造:
網(wǎng)頁(yè)動(dòng)畫終極指南
同時(shí),在Sony網(wǎng)站中,他們展現(xiàn)了多款不同設(shè)備。當(dāng)然,“裝配感”并沒有那么強(qiáng)烈,各部分相互撞擊,在火焰效果中成型。
純裝飾動(dòng)畫
無(wú)論好壞,有些人在網(wǎng)站上加入一些沒有目的的動(dòng)畫,只是為了讓人看到。這值得嗎?
值得,也可以說(shuō)不值得……
我會(huì)盡量避免,因?yàn)樗谷朔中?。你想要人們的視線集中在商品信息和購(gòu)買按鈕上。讓他們來(lái)此達(dá)成目的。如果網(wǎng)站沒有提供特定的目標(biāo),或者確定目標(biāo)時(shí)過(guò)于使人分心,他們就不會(huì)再回來(lái)了。
網(wǎng)頁(yè)動(dòng)畫終極指南
裝飾性的動(dòng)畫應(yīng)該完全隱藏起來(lái)。在人們完成行動(dòng)召喚后再展現(xiàn)出來(lái)。還可以包含微妙的動(dòng)畫,只在用戶觸發(fā)某個(gè)特殊操作時(shí)才展現(xiàn),比如鼠標(biāo)懸停在頁(yè)頭和頁(yè)尾的某個(gè)小物件上面。
在WDD網(wǎng)站中,鼠標(biāo)懸停在logo上會(huì)讓它動(dòng)起來(lái),雖然這點(diǎn)尚存爭(zhēng)議。因?yàn)閘ogo是個(gè)鏈接,并非純裝飾物,但它仍然是個(gè)不錯(cuò)的例子。Google隨便一搜,就會(huì)找到很多帶有彩蛋的網(wǎng)站(比如跳出一只哥斯拉并且咆哮怒吼……我不是在開玩笑)。
還有很多其他例子,包括Google眾所周知的彩蛋,下面這個(gè)來(lái)自photojojo.com:
網(wǎng)頁(yè)動(dòng)畫終極指南
在任何頁(yè)面一路滾動(dòng)到最底部,會(huì)出現(xiàn)一只友善的恐龍“給你拍照”。而且在有氣球的頁(yè)面上,畫面中的氣球會(huì)微妙地來(lái)回飄浮。
廣告中的動(dòng)畫,可以說(shuō):內(nèi)心抗拒,錢包卻不聽使喚
廣告。對(duì)于某些網(wǎng)站來(lái)說(shuō)就是他們收入來(lái)源(咳咳),對(duì)于另一些網(wǎng)站則如同瘟神。給廣告加上動(dòng)畫,duang!視線就被吸引過(guò)去了,違背了本意。這是個(gè)條件反射動(dòng)作。
再加入聲音,用戶會(huì)感到強(qiáng)烈的憎恨……這也是條件反射。
但這幾乎無(wú)法避免。如果想讓人看廣告,讓它動(dòng)起來(lái)就是個(gè)好方法。這可能在某些自我標(biāo)榜“不喧賓奪主”的廣告平臺(tái)那里不受歡迎,但如果動(dòng)畫廣告不起作用,我們就不需要它們了。
不過(guò)這種動(dòng)畫也有著與裝飾性動(dòng)畫相同的問題:將用戶的注意力從主要任務(wù)上分散開。這個(gè)在線銷售的世界,分心就意味著死亡。
最終,衡量利弊還取決于你。沒有廣告、低調(diào)的廣告、或是動(dòng)畫廣告,都需要權(quán)衡。
你可能注意到了,我前面一直沒提過(guò)啟動(dòng)界面動(dòng)畫。那是因?yàn)槲矣X得大家都已經(jīng)很了解了。
動(dòng)畫的實(shí)現(xiàn)
技術(shù)實(shí)現(xiàn)方面也很重要,但無(wú)論你用.gif圖、視頻、CSS、SVG、甚至Flash(天哪),都有一些更重要的原則。暫時(shí)忘掉你打算使用的技術(shù)與技巧,再多做一些理論儲(chǔ)備。用戶會(huì)感謝你的。
性能,性能,還是性能
你會(huì)想,“當(dāng)然,這很明顯。動(dòng)畫應(yīng)當(dāng)運(yùn)行流暢,不能卡頓。”正確,這在理論上確實(shí)顯而易見。但問題是我仍然能看到一些網(wǎng)站,雖然用最新技術(shù)構(gòu)建,動(dòng)畫卻很卡。
我的Nvidia GTX 750 TI顯卡要200美元。你的動(dòng)畫沒理由卡。最近有些網(wǎng)站讓我覺得,“《上古卷軸》運(yùn)行也比這流暢?!蔽覜]有開玩笑說(shuō)大話。
現(xiàn)在,想象一下在低分辨率的平板或手機(jī)上,瀏覽那些網(wǎng)站是什么樣子。一方面,這是個(gè)檢驗(yàn)個(gè)性的方法,但另一方面,它無(wú)法給這些龜速網(wǎng)站帶來(lái)任何業(yè)務(wù)。如果你的印象中只有卡頓的動(dòng)畫,或者壓根沒有動(dòng)畫,那還不如讓界面元素直接各就各位。
這就是說(shuō),那些加入了諸多動(dòng)畫和特效的網(wǎng)站也不怎么樣,它們需要加載界面和進(jìn)度條。沒有人在看到想要的信息前,有義務(wù)等待動(dòng)畫加載。讓人等待,就是你業(yè)務(wù)流失的方式。
我們將這些分成幾點(diǎn):
如果《上古卷軸》比網(wǎng)站的桌面端運(yùn)行更流暢,那很糟糕。
如果用戶看到主頁(yè)前要等待加載動(dòng)畫,那相當(dāng)糟糕。
在此我要給出一點(diǎn)技術(shù)層面的建議:考慮了硬件加速和性能之后,CSS幾乎總是優(yōu)于JavaScript。有選擇時(shí),使用基于CSS的動(dòng)畫,將JS作為備選。
從細(xì)微處開始
將動(dòng)畫當(dāng)作設(shè)計(jì)工具而非樣式表現(xiàn)時(shí),最好從細(xì)微處著手。比如,微小低調(diào)的動(dòng)畫表現(xiàn)更好(見上一章)。第二,巨大炫目的動(dòng)畫必須帶有實(shí)用的目的,不能只為了“好看”。
除了那些讓UI元素感覺“真實(shí)”和接近自然的動(dòng)畫,多數(shù)網(wǎng)站都不需要任何動(dòng)畫。想像一下婚禮上撒米祝福的場(chǎng)景,加入那種視覺差滾動(dòng)效果之前,問問自己,它真的改善了用戶的體驗(yàn)嗎。巨大炫目的東西在屏幕上四處移動(dòng),比常規(guī)文字和美麗的圖片更能告知和引導(dǎo)用戶嗎?
多數(shù)情況下,答案很可能都是“不”。當(dāng)然也會(huì)有例外。例外總是會(huì)有。但多數(shù)時(shí)候,讓按鈕動(dòng)起來(lái),讓隱藏的導(dǎo)航條滑入,用動(dòng)畫移除發(fā)送客服郵件后的成功提示,這就足夠了。
微妙是好設(shè)計(jì)的關(guān)鍵,這點(diǎn)往往被低估。以此為起點(diǎn),然后如果你能確信,更大更閃耀的東西在用戶體驗(yàn)方面更符合你的目標(biāo),那么再全力以赴!
持續(xù)時(shí)間要短,或者說(shuō):我覺得有必要加快速度
動(dòng)畫要快,準(zhǔn)確的說(shuō),應(yīng)該發(fā)生得快。這里我不是在說(shuō)性能,而是一個(gè)物體在運(yùn)動(dòng)過(guò)程中實(shí)際耗費(fèi)的時(shí)間。
想想我們?nèi)绾闻c真實(shí)物體互動(dòng)。有時(shí)候我們動(dòng)作很快,有時(shí)慢。我們操作物體的速度,取決于它的尺寸。是順手而為的任務(wù),還是像端著滿滿一碗水那樣。通常我們會(huì)很快地拿起物體,快速移動(dòng)。單個(gè)動(dòng)作可能發(fā)生在毫秒間。
在我們度量界面動(dòng)畫時(shí),“毫秒”是最通常的度量單位。再長(zhǎng)的話,人們就會(huì)開始對(duì)機(jī)器或產(chǎn)品、或是兩者失去耐心。得確保它夠短,不然讓人感覺遲鈍。
對(duì)于人們反復(fù)使用的產(chǎn)品,這點(diǎn)尤其正確。即使某個(gè)動(dòng)畫相當(dāng)有趣好玩,第10次看到時(shí)也會(huì)失去吸引力。它只是個(gè)跳動(dòng)的按鈕或是滑動(dòng)菜單,而不是你最愛的電視節(jié)目的片頭。沒有人會(huì)為此隨聲附和。
有時(shí)要讓物體具有彈性
真實(shí)物體都會(huì)回彈。有些并不明顯,但基本上所有的物體都有一點(diǎn)彈性。如果將它從足夠高的地方扔向堅(jiān)硬的表面,而且如果沒有太大的空氣阻力的話……總之你懂我意思。
與UI元素交互就像在操作硬質(zhì)的小物體。將它們拋到一邊,它們回彈一點(diǎn)。扔下去,也會(huì)回彈一點(diǎn)。
因此這很有幫助,適當(dāng)時(shí)候讓你的動(dòng)畫“回彈”,尤其是當(dāng)它們垂直移動(dòng)的時(shí)候。這都是在維持運(yùn)動(dòng)感。
物體不會(huì)突然停止
移動(dòng)中的物體需要一些時(shí)間才能靜止。靜止物體需要一定時(shí)間加速。耶,物理現(xiàn)象!
所以,當(dāng)你使物體移動(dòng)或停止時(shí),記得給他們一些時(shí)間(以毫秒計(jì))來(lái)減速或加速。這個(gè)叫做“緩動(dòng)”,這個(gè)功能被置入了CSS中。
鏈接
終極指南如果沒有一個(gè)滿是鏈接的章節(jié),就是不完整的。下面來(lái)了。我們整理了一些文章鏈接,圍繞網(wǎng)頁(yè)動(dòng)畫背后的基本理論、入門教程,還有大量案例。請(qǐng)盡情享用。
選擇我們,優(yōu)質(zhì)服務(wù),不容錯(cuò)過(guò)
1. 優(yōu)秀的網(wǎng)絡(luò)資源,強(qiáng)大的網(wǎng)站優(yōu)化技術(shù),穩(wěn)定的網(wǎng)站和速度保證
2. 15年上海網(wǎng)站建設(shè)經(jīng)驗(yàn),優(yōu)秀的技術(shù)和設(shè)計(jì)水平,更放心
3. 全程省心服務(wù),不必?fù)?dān)心自己不懂網(wǎng)絡(luò),更省心。
------------------------------------------------------------
24小時(shí)聯(lián)系電話:021-58370032
關(guān)鍵詞標(biāo)簽:上海網(wǎng)站建設(shè) 上海網(wǎng)站制作 網(wǎng)站優(yōu)化 小程序開發(fā)