上週末,我使用 HTML 和 CSS 編寫了互動式導覽(這次沒有使用 JavaScript):

https://codepen.io/alvaromontoro/pen/yLWeozP

(如果您錯過了初始動畫,或者想再次看到它,請點擊右下角的「重新執行」。)


對於這個演示:

  • 我嘗試堅持使用語義 HTML 並提供一種可存取的方法(希望我沒有搞亂這部分)。

  • 初始載入動畫是只執行一次並在之後保持原樣的animation

  • 使用 3D CSS 使清單元素彈出和返回。

  • 焦點和懸停狀態受到同等對待,因此滑鼠和鍵盤使用者都會獲得相似的體驗。

  • 它具有減少運動的樣式,可以降低動畫和過渡速度,因此沒有太多的運動(導航專案仍會彈出,但不會動畫化)。

  • 我使用drop-shadow()過濾器產生整個選單的陰影(獨立於選單專案的陰影)。

  • 還使用box-shadow為兄弟姐妹加入嵌入陰影並提供更大的深度感。我一開始是用陰影來做的,但我遇到了一些麻煩,所以我可能會把它們弄得過於複雜了。

  • 我使用:has()選擇處於活動狀態的兄弟姐妹(前一個和後一個),並為其加入一些深度和陰影。

  • 它使用 Font Awesome 作為圖示。

感謝您檢查該元件。如果您有任何疑問,請告訴我。歡迎所有回饋和建議!


原文出處:https://dev.to/alvaromontoro/animated-navigation-menu-57o7


共有 0 則留言