如何创建:响应式顶部导航栏
- Edellinen sivu Ylätunniste navigointi
- Seuraava sivu Jakautunut navigointi
学习如何使用 CSS 和 JavaScript 创建响应式顶部导航栏。
响应式顶部导航菜单
请调整浏览器窗口大小,查看响应式导航菜单的工作方式:
创建响应式顶部导航菜单
第一步 - 添加 HTML:
/* 加载图标库以在小屏幕上显示汉堡菜单(横杠) */ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css"> <div class="topnav" id="myTopnav"> <a href="#home" class="active">Home</a> <a href="#news">News</a> <a href="#contact">Contact</a> <a href="#about">About</a> <a href="javascript:void(0);" class="icon" onclick="myFunction()"> <i class="fa fa-bars"></i> </a> </div>
class="icon" 的链接用于在小屏幕上打开和关闭顶部导航。
第二步 - 添加 CSS:
/* 为顶部导航添加黑色背景色 */ .topnav { background-color: #333; overflow: hidden; } /* 设置导航栏中链接的样式 */ .topnav a { float: left; näyttö: pallo; color: #f2f2f2; text-align: center; padding: 14px 16px; tekstipudotus: ei; fonttikoko: 17px; } /* Muuta linkin väriä hiiren osoittimen yllä */ .topnav a:hover { taustaväri: #ddd; väri: musta; } /* Lisää aktiivinen luokka korostaaksesi nykyistä sivua */ .topnav a.active { taustaväri: #04AA6D; väri: valkoinen; } /* Piilotetaan linkki, joka avaa ja sulkee ylätunnistimen pienillä näytöillä */ .topnav .icon { näyttö: ei näkyvissä; }
Lisää mediatutkimus:
/* Kun näytön leveys on alle 600 pikseliä, piilotetaan kaikki linkit paitsi ensimmäinen ("Koti") ja näytetään linkki, joka avaa ja sulkee ylätunnistimen (.icon) */ @media screen and (max-width: 600px) { .topnav a:not(:first-child) {näyttö: ei näkyvissä;} .topnav a.icon { liikkuvuus: oikea; näyttö: pallo; } } /* Kun käyttäjä napsauttaa kuvaketta, JavaScript lisää "responsive"-luokan topnaviin. Tämä luokka tekee topnavista paremman näyttämään pienillä näytöillä (näyttää linkit pystysuoraan eikä horisontaalisesti) */ @media screen and (max-width: 600px) { .topnav.responsive {sijainti: suhteellinen;} .topnav.responsive a.icon { sijainti: absoluuttinen; oikea: 0; ylä: 0; } .topnav.responsive a { liikkuvuus: ei; näyttö: pallo; tekstiasento: vasen; } }
Vaihe 3 - Lisää JavaScript:
/* Kun käyttäjä napsauttaa kuvaketta, vaihdetaan "responsive"-luokkaa topnavissa lisäämällä tai poistamalla */ function myFunction() { var x = document.getElementById("myTopnav"); if (x.className === "topnav") { x.className += " responsive"; } else { x.className = "topnav"; } }
Liittyvät sivut
Oppitunnit:CSS navigointipalkki
- Edellinen sivu Ylätunniste navigointi
- Seuraava sivu Jakautunut navigointi