CSS
 Computer >> コンピューター >  >> プログラミング >> CSS

CSSのドロップダウンでレスポンシブナビゲーションバーを作成するにはどうすればよいですか?


以下は、ドロップダウン付きのレスポンシブナビゲーションバーを作成するためのコードです-

<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1" />
<style>
*,*::after,*::before{
   box-sizing: border-box;
}
.menu-btn {
   font-size: 18px;
   font-weight: bold;
   display: inline-block;
   text-align: center;
   background-color: #040008;
   color: white;
   padding: 20px;
   font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
   border: none;
   width: 100%;
}
.dropdown-menu {
   position: relative;
   display: inline-block;
}
.menu-content {
   display: none;
   position: absolute;
   width: 100%;
   background-color: #017575;
   min-width: 160px;
   z-index: 1;
}
nav{
   background-color: #017575;
   width: 100%;
}
.links,.links-hidden{
   display: inline-block;
   color: rgb(255, 255, 255);
   text-decoration: none;
   font-size: 18px;
   font-weight: bold;
   padding: 20px;
}
.links-hidden:hover,.links:hover {
   background-color: rgb(8, 107, 46);
}
.dropdown-menu:hover .menu-content {
   display: block;
}
.dropdown-menu:hover .menu-btn {
   background-color: #3e8e41;
}
.hamburger {
   color: white;
   font-weight: bolder;
   display: none;
}
@media screen and (max-width: 880px) {
      nav a:not(:first-child) {
      display: none;
   }
   nav a.hamburger {
      float: right;
      display: block;
      padding: 12px;
   }
   .dropdown-menu{
      display: none;
   }
   nav.openNav a.hamburger {
      position: relative;
   }
   nav.openNav a {
      float: none;
      display: block;
      text-align: center;
   }
}
nav.openNav div.dropdown-menu{
   display: block;
   width: 100%;
}
</style>
</head>
<body>
<nav>
<a class="links" href="#">HOME</a>
<a class="links" href="#">EMPLOYEES</a>
<a class="links" href="#">CAREER</a>
<a class="links" href="#">Our History</a>
<a class="links" href="#">Fund Us</a>
<a class="links" href="#">More Info</a>
<div class="dropdown-menu">
<button class="menu-btn">Open <</button>
<div class="menu-content">
<a class="links-hidden" href="#">Contact Us</a>
<a class="links-hidden" href="#">Visit Us</a>
<a class="links-hidden" href="#">About Us</a>
</div>
</div>
<a class="hamburger">☰</a>
</nav>
<script>
var x = document.getElementsByTagName("nav")[0];
function toggleNav() {
   if (x.className === "") {
      x.className = " openNav";
   } else {
      x.className = "";
   }
}
document.querySelector(".hamburger").addEventListener("click", toggleNav);
</script>
</body>
</html>

出力

上記のコードは次の出力を生成します-

CSSのドロップダウンでレスポンシブナビゲーションバーを作成するにはどうすればよいですか?

ウィンドウのサイズを880px以下に変更する場合-

CSSのドロップダウンでレスポンシブナビゲーションバーを作成するにはどうすればよいですか?

ハンバーガーメニューを開いてからドロップダウンを開くと-

CSSのドロップダウンでレスポンシブナビゲーションバーを作成するにはどうすればよいですか?


  1. CSSを使用してレスポンシブブログレイアウトを作成するにはどうすればよいですか?

    CSSを使用してレスポンシブブログレイアウトを作成するためのコードは次のとおりです- 例 <!DOCTYPE html> <html> <head> <meta name="viewport" content="width=device-width, initial-scale=1" /> <style>    * {       box-sizing: border-box;    }    body {

  2. CSSを使用してスクロール上の固定ナビゲーションバーを作成するにはどうすればよいですか?

    CSSのpositionプロパティを指定することで、CSSを使用して固定ナビゲーションバーを作成できます。 CSSのpositionプロパティの構文は次のとおりです- Selector {    position: /*value*/; } 以下は、CSS位置プロパティの例です。 例 <!DOCTYPE html> <html> <head> <style> #navigation-bar {    overflow: hidden;    box-shadow: inset 0 0