DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> CSS入門知識 >> CSS詳解 >> 使用CSS制作一個比較炫酷的頁面切換動畫
使用CSS制作一個比較炫酷的頁面切換動畫
編輯:CSS詳解     
這篇文章主要介紹了使用CSS制作一個比較炫酷的頁面切換動畫,根據鼠標點擊顯示切換時的動畫效果,需要的朋友可以參考下

今天我們想與大家分享一組創意的頁面切換熊效果集合。我們已經在示例中羅列了一組動畫,可以被應用到頁面切換過程中,創造出很有趣的導航效果。雖然有些效果都非常簡單,只是簡單的滑動動作,但另外的一些則是利用了視角(Perspective)和 3D 轉換(3D Transforms)來創造一些立體動感的效果。

在線演示

溫馨提示:為保證最佳的效果,請在 IE10+、Chrome、Firefox 和 Safari 等現代浏覽器中浏覽。

  CSS 動畫根據它們的實現的效果分為不同的組。為展示頁面過渡效果,我們使用以下結構:

CSS Code復制內容到剪貼板
  1. <div id="pt-main" class="pt-perspective">
  2. <div class="pt-page pt-page-1">
  3. <h1><span>A collection of</span><strong>Page</strong> Transitions</h1>
  4. </div>
  5. <div class="pt-page pt-page-2"><!-- ... --></div>
  6. <!-- ... -->
  7. </div>

  透視容器的位置是相對的,我們增加1200像素透視它。所有動畫效果都需要以下的樣式:

CSS Code復制內容到剪貼板
  1. .pt-perspective {
  2. position: relative;
  3. width: 100%;
  4. height: 100%;
  5. perspective: 1200px;
  6. transform-style: preserve-3d;
  7. }
  8. .pt-page {
  9. width: 100%;
  10. height: 100%;
  11. position: absolute;
  12. top: 0;
  13. left: 0;
  14. visibility: hidden;
  15. overflow: hidden;
  16. backface-visibility: hidden;
  17. transform: translate3d(0, 0, 0);
  18. }
  19. .pt-page-current,
  20. .no-JS .pt-page {
  21. visibility: visible;
  22. }
  23. .no-JS body {
  24. overflow: auto;
  25. }
  26. .pt-page-ontop {
  27. z-index: 999;
  28. }

  上面的 .pt-page-ontop 樣式用於某些頁面過渡效果,即我們需要讓一個頁面留在另一個頁面的頂部。下面是一個代碼例子,展示了動畫類和關鍵幀動畫,在不同方向上縮放網頁和以及淡入淡出效果:

CSS Code復制內容到剪貼板
  1. /* scale and fade */
  2. .pt-page-scaleDown {
  3. animation: scaleDown .7s ease both;
  4. }
  5. .pt-page-scaleUp {
  6. animation: scaleUp .7s ease both;
  7. }
  8. .pt-page-scaleUpDown {
  9. animation: scaleUpDown .5s ease both;
  10. }
  11. .pt-page-scaleDownUp {
  12. animation: scaleDownUp .5s ease both;
  13. }
  14. .pt-page-scaleDownCenter {
  15. animation: scaleDownCenter .4s ease-in both;
  16. }
  17. .pt-page-scaleUpCenter {
  18. animation: scaleUpCenter .4s ease-out both;
  19. }
  20. /************ keyframes ************/
  21. /* scale and fade */
  22. @keyframes scaleDown {
  23. to { opacity: 0; transform: scale(.8); }
  24. }
  25. @keyframes scaleUp {
  26. from { opacity: 0; transform: scale(.8); }
  27. }
  28. @keyframes scaleUpDown {
  29. from { opacity: 0; transform: scale(1.2); }
  30. }
  31. @keyframes scaleDownUp {
  32. to { opacity: 0; transform: scale(1.2); }
  33. }
  34. @keyframes scaleDownCenter {
  35. to { opacity: 0; transform: scale(.7); }
  36. }
  37. @keyframes scaleUpCenter {
  38. from { opacity: 0; transform: scale(.7); }
  39. }

  對於本演示的目的,我們采用了相應的動畫類應用到當前頁以及即將切換進來的頁面,例如:

CSS Code復制內容到剪貼板
  1. //...
  2. case 17:
  3. outClass = 'pt-page-scaleDown';
  4. inClass = 'pt-page-moveFromRight pt-page-ontop';
  5. break;
  6. case 18:
  7. outClass = 'pt-page-scaleDown';
  8. inClass = 'pt-page-moveFromLeft pt-page-ontop';
  9. break;
  10. case 19:
  11. outClass = 'pt-page-scaleDown';
  12. inClass = 'pt-page-moveFromBottom pt-page-ontop';
  13. break;
  14. // ...

  查看演示,您可以通過點擊第一個按鈕來浏覽一整套的頁面切換效果,您也可以選擇從下拉菜單中選擇一個特定的效果進行預覽。

  我希望你會喜歡這個並從中得到啟發,創作出一些更加令人興奮的東西!

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved