Heim > Artikel > Web-Frontend > Atemberaubende sechseckige CSS3-Menüanimationseffekte
Kurzes Tutorial
Dies ist ein cooler sechseckiger Menüanimationseffekt, der mit CSS3 und einer kleinen Menge JS-Code erstellt wurde. Das sechseckige Menü hat einen Hervorhebungsanimationseffekt, wenn die Maus darüber fährt. Wenn Sie auf das Menü klicken, wird jedes Menüelement entlang jeder Seite des Sechsecks angezeigt, um ein großes Sechseck zu bilden.
Verwenden der Methode
HTML-Struktur
Das sechseckige Menü wird mit einem 486d7a50595533609bc98d44595dc670 erstellt, und die Menüelemente werden mit einer ungeordneten Liste erstellt
<nav id="hexNav"> <div id="menuBtn"> <svg viewbox="0 0 100 100"> <polygon points="50 2 7 26 7 74 50 98 93 74 93 26" fill="transparent" stroke-width="4" stroke="#585247" stroke-dasharray="0,0,300"/> </svg> <span></span> </div> <ul id="hex"> <li class="tr"><div class="clip"><a href="#" class="content"> <img src="img/1.jpg" alt="" /> <h2 class="title">Title</h2><p>Catch phrase</p> </a></div></li> <li class="tr"><div class="clip"><a href="#" class="content"> <img src="img/2.jpg" alt="" /> <h2 class="title">Title</h2><p>Catch phrase</p> </a></div></li> <li class="tr"><div class="clip"><a href="#" class="content"> <img src="img/3.jpg" alt="" /> <h2 class="title">Title</h2><p>Catch phrase</p> </a></div></li> <li class="tr"><div class="clip"><a href="#" class="content"> <img src="img/4.jpg" alt="" /> <h2 class="title">Title</h2><p>Catch phrase</p> </a></div></li> <li class="tr"><div class="clip"><a href="#" class="content"> <img src="img/5.jpg" alt="" /> <h2 class="title">Title</h2><p>Catch phrase</p> </a></div></li> <li class="tr"><div class="clip"><a href="#" class="content"> <img src="img/6.jpg" alt="" /> <h2 class="title">Title</h2><p>Catch phrase</p> </a></div></li> </ul> </nav>
JavaScript
Das sechseckige Menü verwendet eine kleine Menge JS-Code, um das Mausklickereignis der Schaltfläche abzuhören und die entsprechende Klasse dafür hinzuzufügen und zu entfernen.
var hexNav = document.getElementById('hexNav'); document.getElementById('menuBtn').onclick = function() { var className = ' ' + hexNav.className + ' '; if ( ~className.indexOf(' active ') ) { hexNav.className = className.replace(' active ', ' '); } else { hexNav.className += ' active'; } }
Das Obige ist der Inhalt der atemberaubenden sechseckigen CSS3-Menüanimationseffekte. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (m.sbmmt.com)!