如何创建:响应式底部导航菜单

学习如何使用 CSS 和 JavaScript 创建响应式底部导航菜单。

响应式底部导航

请调整浏览器窗口大小,以查看响应式导航菜单的工作方式:

Δοκιμάστε το προσωπικά

创建响应式底部导航栏

第一步 - 添加 HTML:

<div class="navbar" id="myNavbar">
  <a href="#home">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()">☰</a>
</div>

带有 class="icon" 的链接用于在小屏幕上打开和关闭导航栏。

第二步 - 添加 CSS:

/* 将导航栏放在页面底部,并使其固定 */
.navbar {
  background-color: #333;
  overflow: hidden;
  position: fixed;
  κάτω: 0;
  width: 100%;
}
/* 设置导航栏中链接的样式 */
.navbar a {
  float: left;
  διαδραστικότητα: block;
  χρώμα: #f2f2f2;
  ιεράκινη κέντρο;
  παράθεση: 14px 16px;
  διαγράμμιση κειμένου: κανένα;
  尺碼: 17px;
}
/* Αλλάζει το χρώμα του δεσμού όταν το ποντίκι αναγνωρίζεται */
.navbar a:hover {
  χρώμα περιβάλλοντος: #ddd;
  χρώμα: μαύρο;
}
/* Προσθέτει πράσινο χρώμα φόντου για τον ενεργό δεσμό */
.navbar a.active {
  χρώμα περιβάλλοντος: #04AA6D;
  χρώμα: λευκό;
}
/* Κρύβει τους δεσμούς που θα πρέπει να ανοίγουν και να κλείνουν την γραμμή πλοήγησης στο μικρό οθόνη */
.navbar .icon {
  διαδραστικότητα: none;
}

Προσθήκη ερωτηματικού στοιχείου μέσων:

/* Όταν το πλάτος οθόνης είναι κάτω από 600 εικονοστοιχεία, κρύβει όλους τους δεσμούς εκτός του πρώτου ("Home") και εμφανίζει δεσμούς που ανοίγουν και κλείνουν την γραμμή πλοήγησης (.icon) */
@μέτα από οθόνη και (πλάτος: max-width: 600px) {
  .navbar a:not(:first-child) {display: none;}
  .navbar a.icon {
    πλάτος: δεξιά;
    διαδραστικότητα: block;
  }
}
/* Όταν ο χρήστης κάνει κλικ στο εικονίδιο, χρησιμοποιείται το JavaScript για να προσθέσει την κλάση "responsive" στην γραμμή πλοήγησης.
Αυτή η κλάση κάνει την γραμμή πλοήγησης να φαίνεται καλύτερα σε μικρούς οθόνες (υποβάθμιση των δεσμών οριζόντιας απόθεσης σε κάθετα) */
@μέτα από οθόνη και (πλάτος: max-width: 600px) {
  .navbar.responsive a.icon {
    θεση: αμετάβλητη;
    δεξιά: 0;
    κάτω: 0;
  }
  .navbar.responsive a {
    πλάτος: κανένα;
    διαδραστικότητα: block;
    ιεράκινη αριστερά;
  }
}

Τρίτο βήμα - Προσθήκη JavaScript:

/* Όταν ο χρήστης κάνει κλικ στο εικονίδιο, προσθέτει και αφαιρεί την κλάση "responsive" στην γραμμή πλοήγησης μεταξύ ανακύκλωσης */
λειτουργία myFunction() {
  επιλεγεί x = document.getElementById("myNavbar");
  αν (x.className === "navbar") {
    x.className += " responsive";
  } αλλιώς {
    x.className = "navbar";
  }
}

Δοκιμάστε το προσωπικά

Σχετικές σελίδες

Εκμάθηση:Κατάλογος CSS