回覆列表
  • 1 # Addo

    動畫是人類畢生的理想之一(如果像某些歷史學家相信的那樣)。這個理論源起於洞穴壁畫:在某些洞穴壁畫中,經常見到一些生物被畫上遠多於正常數量的肢體。

    這背後有很多套理論。有些指出這很簡單,因為藝術家們並沒有方法可以擦除這些肢體,於是將他們的錯誤留在壁畫上,傳給了子孫。還有理論相信,這些是最早的試圖在靜止影象中捕捉動態的方法。我選擇相信後者。

    還有比捕捉動態更加自然的願望了嗎?自然界的一切都在運動。人在行走,水在流動,植物開枝散葉,自然界唯一不變的就是變化,以一種運動的形式。有些在模糊中一閃而過,有些則慢到難以察覺,但這些都在發生。

    動畫對於網頁設計師已經不再新奇……它正在成為最基礎的互動設計效果。

    動畫就是變化,是一種運動。它是我們藝術創作中最接近真實反映生活的東西。這就是為什麼人們總是說“動畫使我們的網站(或是演講,諸如此類)鮮活起來。”這可能是陳詞濫調了,但這個詞很優美地呈現了動畫在網頁設計中的目的。

    正確使用運動感,可以告訴使用者他們完成了某些操作。他們成功地與介面進行了互動,引發了某些變化。

    人們與真實物體互動時,也會觸發並體驗到相同的感覺(至少是類似的感覺)。就某種程度而言,動畫是擬物的。沒錯,我說的就是擬物。

    使用得當時,動畫可以被設計成模模擬實世界的互動。我們似乎在原地打轉。可能我們不會再過多使用複雜的皮革紋理,但我們仍然在嘗試效仿現實世界。

    網頁動畫簡史

    在進入實用部分之前,我們看看網際網路上的動畫是如何發展到今天(這麼酷)的。最初一切都誕生於gif圖……

    原來.gif檔案年齡甚至比我還大2歲。它們在1987年被創造,正是早年我們剛知道(或多或少)網際網路的時候。因此開創了跳舞嬰兒的紀元,那些東西太可怕了,還是忘了好。

    如果gif圖的流行告訴了我們什麼,那就是人們想要將動畫引入網頁中。在此提醒一下,多數人可能並沒有從改善可用性的方式考慮動畫。一切都只是為了產生一點個性,表現一點生機,與其他靜止的網頁區分開。

    現在正是關注網頁動畫與App動畫的最佳時機。

    當.gif檔案的能力耗盡後,人們想要一種更好的方式,來向網站中新增動畫。對,聲音!聲音太棒了。如果人們開啟你的網頁,開始播放你最喜歡的歌曲,這得有多棒啊?要像真正的歌曲……而不是那種破爛電腦音樂,對吧?

    是Flash讓我們艱難地學到了這個教訓。但是別忘了Flash在它所處的年代是相當驚豔的。實際上它是一種革新。它是一種進步。它非常酷。

    無論後來它被如何濫用,要知道Flash讓我們在網際網路中做一些從沒想過的事情。它拓寬了創意的視野,為人們在一個嶄新的行業創造了工作機會,帶來了“網頁動畫”和90年代最棒的東西(除了天堂):Flash遊戲。甚至直到現在,我都覺得那些遊戲使人入迷。

    隨著時間推移,很多設計師轉移到基於Javascript的動畫上,用於創造一些小東西,比如下拉選單和其他導航元素。畢竟如果做得恰當的話,這更有利於SEO。其他人只用Javascript是因為,那正是FrontPage和DreamWeaver呼叫按鈕圖片的方式。微小的進步仍然是進步。

    00年代中旬,W3C已經在努力將動畫加入到CSS規範中。2009年,首份公開的CSS動畫規範初稿就釋出了。

    如今呢?我們探索出了強制硬體渲染、CSS動畫結合SVG檔案、延伸基本動畫功能的JavaScript庫,等等。

    現在我們正在探尋各種方式,不僅僅是為網站增添風格。我們在試圖改善可用性,告知並教育使用者,讓使用者更容易瞭解他們在做什麼。

    對於網頁設計師,動畫不再是新奇事物。它成為了影視行業的基礎,一種全新的敘事方式。對我們而言,它成為了有效互動設計的基礎。

    現在正是關注網頁動畫與App動畫的最佳時機。科技尚沒有完全成熟(什麼時候會呢),也無法提供全方位支援(何時能夠呢),但我們在探尋新的方式將它呈現在世人面前,無需透過外掛或是專用程式碼。

    我們越是以開放的動畫標準為基礎,越多的人就能首先看到。近年來人們專注於運用動畫驅動互動,這是一件非常非常好的事情。

    是時候成為先行者了。

    網頁動畫的種類

    回到正題。我們在談論的是哪種動畫?我的意思是,我說了很多關於使用動畫改善使用者介面的言論,那些究竟是什麼意思?

    很顯然,我們不能將動畫效果隨手加於網頁元素之上,然後期盼它能提升轉化率。那太傻了。就像設計的所有其他方面,使用哪種動畫,何時使用,這都需要仔細考慮。

    實際細節與實現也是必須考慮的。如果你的動畫過於耗費資源,拖慢使用者的移動裝置,或者更糟的是拖慢他們的桌面裝置,這就有問題了。很多問題。

    我們由此入手,看看網頁上幾種典型的動畫:

    介面元素動畫

    我不知道這是不是最普遍的一類動畫,不過我猜是的。它應該獲此殊榮。在我的觀念中,這是最有用的動畫型別。

    不是說有反饋更好,而是如今反饋是必須的,這是個扁平化設計的世界。人們需要了解介面與裝飾物之間的區別。讓元素運動起來,是簡單微妙的互動方式,給予使用者他們所需的反饋。

    Pro-foods

    等待動畫

    這個也是,同樣是為了給使用者提供反饋。這類動畫,會在某些操作正在後臺進行時呈現給使用者,你可不想讓他們等到崩潰。

    這類動畫的作用很久以前就得到了印證,就在圖形化使用者介面首次發明的時候。最早的方式是滑鼠指標變成沙漏,還有進度條也是。Apple在某時刻採用了“旋轉的沙灘排球”,而windows則呈現了檔案優雅地從一個資料夾飛向另一個。

    無論哪種方式,告訴使用者正在發生的事情,哪怕透過一個簡單的進度條,也能極大減輕精神負擔……即使對於我們這些使用電腦很久的使用者也是一樣。

    Beegit 是一款寫作應用,我用它來撰寫和編輯這篇文章。它提供了一個便捷的“進度圈”,告訴我圖片何時會上傳完成,在模態視窗的左上角可以看到:

    講故事的動畫

    如今,用動畫來講故事已經超越了卡通。實際上,我要講的完全不是那些動畫。而是那些被設計出來與使用者互動(比如向下滾動)的網站,操作引發了動畫,講述了故事。

    有些普遍例子,那些頁面會在你眼前將產品“裝配”起來,以此展現新產品。其他則更像卡通片,有個小卡通形象跟隨你到頁面的每個地方。

    Kennedyandoswald

    這些動畫的作用……存在爭議。通常它們並沒有提升可用性的意圖,只是為了讓使用者印象深刻,為他們提供頁面主題相應的環境。它們可能是在試圖呈現一件產品的工藝,或是分享打造這件創造物的經歷。

    動畫能否做到這點,取決於它們本身的質量。是否過度影響了網站的效能,或是影響了頁面內容本身。如果使用者在網站上找不到自己要的東西,世上所有的動畫效果都救不了它。

    有兩個案例我的確很喜歡,它們來自深諳此道品牌:Apple和Sony。

    Mac Pro的頁面,致力於向下滾動時精確呈現內部構造:

    Apple

    同時,在Sony網站中,他們展現了多款不同裝置。當然,“裝配感”並沒有那麼強烈,各部分相互撞擊,在火焰效果中成型。

    純裝飾動畫

    無論好壞,有些人在網站上加入一些沒有目的的動畫,只是為了讓人看到。這值得嗎?

    值得,也可以說不值得……

    Brightmedia

    裝飾性的動畫應該完全隱藏起來。在人們完成行動召喚後再展現出來。還可以包含微妙的動畫,只在使用者觸發某個特殊操作時才展現,比如滑鼠懸停在頁頭和頁尾的某個小物件上面。

    在WDD網站中,滑鼠懸停在logo上會讓它動起來,雖然這點尚存爭議。因為logo是個連結,並非純裝飾物,但它仍然是個不錯的例子。Google隨便一搜,就會找到很多帶有彩蛋的網站(比如跳出一隻哥斯拉並且咆哮怒吼……我不是在開玩笑)。

    還有很多其他例子,包括Google眾所周知的彩蛋,下面這個來自photojojo.com:

    Photojojo

    在任何頁面一路滾動到最底部,會出現一隻友善的恐龍“給你拍照”。而且在有氣球的頁面上,畫面中的氣球會微妙地來回飄浮。

    廣告中的動畫,可以說:內心抗拒,錢包卻不聽使喚

    再加入聲音,使用者會感到強烈的憎恨……這也是條件反射。

    不過這種動畫也有著與裝飾性動畫相同的問題:將使用者的注意力從主要任務上分散開。這個線上銷售的世界,分心就意味著死亡。

    最終,衡量利弊還取決於你。沒有廣告、低調的廣告、或是動畫廣告,都需要權衡。

    你可能注意到了,我前面一直沒提過啟動介面動畫。那是因為我覺得大家都已經很瞭解了。

    動畫的實現

    技術實現方面也很重要,但無論你用.gif圖、影片、CSS、SVG、甚至Flash(天哪),都有一些更重要的原則。暫時忘掉你打算使用的技術與技巧,再多做一些理論儲備。使用者會感謝你的。

    效能,效能,還是效能

    你會想,“當然,這很明顯。動畫應當執行流暢,不能卡頓。”正確,這在理論上確實顯而易見。但問題是我仍然能看到一些網站,雖然用最新技術構建,動畫卻很卡。

    我的Nvidia GTX 750 TI顯示卡要200美元。你的動畫沒理由卡。最近有些網站讓我覺得,“《上古卷軸》執行也比這流暢。”我沒有開玩笑說大話。

    現在,想象一下在低解析度的平板或手機上,瀏覽那些網站是什麼樣子。一方面,這是個檢驗個性的方法,但另一方面,它無法給這些龜速網站帶來任何業務。如果你的印象中只有卡頓的動畫,或者壓根沒有動畫,那還不如讓介面元素直接各就各位。

    這就是說,那些加入了諸多動畫和特效的網站也不怎麼樣,它們需要載入介面和進度條。沒有人在看到想要的資訊前,有義務等待動畫載入。讓人等待,就是你業務流失的方式。

    我們將這些分成幾點:

    如果《上古卷軸》比網站的桌面端執行更流暢,那很糟糕。如果使用者看到主頁前要等待載入動畫,那相當糟糕。在此我要給出一點技術層面的建議:考慮了硬體加速和效能之後,CSS幾乎總是優於JavaScript。有選擇時,使用基於CSS的動畫,將JS作為備選。

    從細微處開始

    將動畫當作設計工具而非樣式表現時,最好從細微處著手。比如,微小低調的動畫表現更好(見上一章)。第二,巨大炫目的動畫必須帶有實用的目的,不能只為了“好看”。

    除了那些讓UI元素感覺“真實”和接近自然的動畫,多數網站都不需要任何動畫。想像一下婚禮上撒米祝福的場景,加入那種視覺差滾動效果之前,問問自己,它真的改善了使用者的體驗嗎。巨大炫目的東西在螢幕上四處移動,比常規文字和美麗的圖片更能告知和引導使用者嗎?

    微妙是好設計的關鍵,這點往往被低估。以此為起點,然後如果你能確信,更大更閃耀的東西在使用者體驗方面更符合你的目標,那麼再全力以赴!

    持續時間要短,或者說:我覺得有必要加快速度

    動畫要快,準確的說,應該發生得快。這裡我不是在說效能,而是一個物體在運動過程中實際耗費的時間。

    想想我們如何與真實物體互動。有時候我們動作很快,有時慢。我們操作物體的速度,取決於它的尺寸。是順手而為的任務,還是像端著滿滿一碗水那樣。通常我們會很快地拿起物體,快速移動。單個動作可能發生在毫秒間。

    在我們度量介面動畫時,“毫秒”是最通常的度量單位。再長的話,人們就會開始對機器或產品、或是兩者失去耐心。得確保它夠短,不然讓人感覺遲鈍。

    有時要讓物體具有彈性

    真實物體都會回彈。有些並不明顯,但基本上所有的物體都有一點彈性。如果將它從足夠高的地方扔向堅硬的表面,而且如果沒有太大的空氣阻力的話……總之你懂我意思。

    與UI元素互動就像在操作硬質的小物體。將它們拋到一邊,它們回彈一點。扔下去,也會回彈一點。

    因此這很有幫助,適當時候讓你的動畫“回彈”,尤其是當它們垂直移動的時候。這都是在維持運動感。

    物體不會突然停止

    移動中的物體需要一些時間才能靜止。靜止物體需要一定時間加速。耶,物理現象!

    所以,當你使物體移動或停止時,記得給他們一些時間(以毫秒計)來減速或加速。這個叫做“緩動”,這個功能被置入了CSS中。

  • 中秋節和大豐收的關聯?
  • 比較熱的區塊鏈行業公眾號有哪些?