發散式彈出菜單是網頁設計中常見的一種菜單形式,它不僅擁有美觀的視覺效果,還能使用戶在操作時更加方便快捷。在本教程中,我們將介紹如何使用純 CSS3 實現一個發散式彈出菜單。
.menu { position: fixed; bottom: 40px; right: 40px; } .menu-item { position: absolute; bottom: 0; right: 0; width: 60px; height: 60px; border-radius: 50%; background-color: #ff4d4d; text-align: center; cursor: pointer; transition: all .3s ease; } .menu-item span { display: inline-block; margin-top: 25px; color: #fff; font-size: 22px; } .menu-item:hover { transform: scale(1.1); } .menu-item:nth-child(1) { transform: rotate(0deg); } .menu-item:nth-child(1):hover ~ .menu-item { transform: rotate(360deg); } .menu-item:nth-child(2) { transform: rotate(45deg); } .menu-item:nth-child(2):hover ~ .menu-item { transform: rotate(360deg); } .menu-item:nth-child(3) { transform: rotate(90deg); } .menu-item:nth-child(3):hover ~ .menu-item { transform: rotate(360deg); } .menu-item:nth-child(4) { transform: rotate(135deg); } .menu-item:nth-child(4):hover ~ .menu-item { transform: rotate(360deg); } .menu-item:nth-child(5) { transform: rotate(180deg); } .menu-item:nth-child(5):hover ~ .menu-item { transform: rotate(360deg); } .menu-item:nth-child(6) { transform: rotate(225deg); } .menu-item:nth-child(6):hover ~ .menu-item { transform: rotate(360deg); } .menu-item:nth-child(7) { transform: rotate(270deg); } .menu-item:nth-child(7):hover ~ .menu-item { transform: rotate(360deg); } .menu-item:nth-child(8) { transform: rotate(315deg); } .menu-item:nth-child(8):hover ~ .menu-item { transform: rotate(360deg); }
如上所示,我們首先創建了一個模塊的 `menu`,它作為發散式彈出菜單的容器,內部包括多個 `menu-item`,每個 `menu-item` 包含了一個小圓點和一個文本標簽。我們利用 `transform` 屬性實現了圓點的旋轉效果,隨著鼠標的懸浮,圓點的旋轉速度也越來越快。
總的來說,這是一種簡單而有趣的菜單實現方式,其代碼簡潔清晰,可以用于多種類型的網站,特別是那些需要展示多個功能頁面的網站。希望這篇教程能對您在設計中有所啟發。