■ 전체화면 모든메뉴
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<style>
body{
margin: 0px;
}
header{
height: 100vh;
}
header img{
width: 100%;
height: 100%;
object-fit: cover;
}
/* 노말라이즈 */
ul{
padding: 0; margin: 0;
list-style: none;
}
a{
text-decoration: none; color: inherit;
}
/* 헤더 메뉴 */
header{
position: relative;
}
nav{
position: absolute; left: 0; top: 0;
z-index: 2;
width: 100%; height: 50px;
padding: 0 100px; box-sizing: border-box;
display: flex; justify-content: space-between;
font-weight: 600;
background-color: #fff;
}
/* 로고 */
nav .logo{
width: 100px; height: 100%;
align-content: center;
}
/* 메뉴 */
nav .menu{
width: 500px; height: 100%;
display: flex;
}
nav .menu > li{
width: 100%; height: 100%;
align-content: center;
}
nav .menu > li > a{
display: inline-block;
width: 100%; height: 100%;
text-align: center; align-content: center;
position: relative;
}
nav .menu > li:hover > a::after{
position: absolute;
content: "";
}
/* 서브메뉴 */
nav .menu > li > .submenu{
width: 100%; padding: 10px 0;
color: black; display: none;
}
nav .menu > li > .submenu > li{
width: 100%; height: 40px;
text-align: center; align-content: center;
}
/* 메뉴 li 호버시 서브메뉴 */
nav .menu:hover .submenu{
display: block;
}
/* 서브메뉴 백그라운드 */
nav .menu > .bg{
position: absolute; left: 0; top: 100%;
z-index: -1; display: none;
width: 100%; height: 300px;
background-color: #fff;
}
/* 메뉴호버시 백그라운드 */
nav .menu:hover > .bg{
display: block;
}
/* 아이콘 */
nav .icon-box{
width: 100px; height: 100%;
display: flex;
justify-content: space-between; align-items: center;
}
nav .icon-box .icon{
width: 10px;
height: 10px;
background-color: red;
}
</style>
</head>
<body>
<div class="wrap">
<header>
<img src="./header1.jpg" alt="">
<nav>
<div class="logo">로고</div>
<ul class="menu">
<li><a href="#">Menu1</a>
<ul class="submenu">
<li><a href="#">sub1-1</a></li>
<li><a href="#">sub1-2</a></li>
<li><a href="#">sub1-3</a></li>
</ul>
</li>
<li><a href="#">Menu2</a>
<ul class="submenu">
<li><a href="#">sub2-1</a></li>
<li><a href="#">sub2-2</a></li>
<li><a href="#">sub2-3</a></li>
</ul>
</li>
<li><a href="#">Menu3</a>
<ul class="submenu">
<li><a href="#">sub3-1</a></li>
<li><a href="#">sub3-2</a></li>
<li><a href="#">sub3-3</a></li>
</ul>
</li>
<li><a href="#">Menu4</a>
<ul class="submenu">
<li><a href="#">sub4-1</a></li>
<li><a href="#">sub4-2</a></li>
<li><a href="#">sub4-3</a></li>
</ul>
</li>
<div class="bg"></div>
</ul>
<div class="icon-box">
<div class="icon"></div>
<div class="icon"></div>
<div class="icon"></div>
</div>
</nav>
</header>
</div>
<script>
$(function(){
});
</script>
</body>
</html>
■ 전체화면 각각 메뉴
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
<style>
body{
margin: 0px;
}
header{
height: 100vh;
}
header img{
width: 100%;
height: 100%;
object-fit: cover;
}
/* 노말라이즈 */
ul{
padding: 0; margin: 0;
list-style: none;
}
a{
text-decoration: none; color: inherit;
}
/* 헤더 메뉴 */
header{
position: relative;
}
nav{
position: absolute; left: 0; top: 0;
z-index: 2;
width: 100%; height: 50px;
padding: 0 100px; box-sizing: border-box;
display: flex; justify-content: space-between;
color: #fff; font-weight: 600;
}
/* 백그라운드 */
header .bgb{
position: absolute; left: 0; top: 0;
display: none;
width: 100%; height: 100%;
backdrop-filter: blur(5px); /*블러 효과*/
}
header .bgb.act{ /* act클래스 추가 되면*/
display: block;
}
/* 네비에서 엑트시 내안에 있는 것 */
nav.act{
background-color: #fff;
color: black;
}
nav.act .logo{ /* 네비에서 액트 되면 로고가 */
color: blue;
}
/* 로고 */
nav .logo{
width: 100px; height: 100%;
align-content: center;
}
/* 메뉴 */
nav .menu{
height: 100%;
display: flex;
}
nav .menu > li{
height: 100%;
align-content: center; text-align: center;
}
nav .menu > li > a{
--menu-pa : 30px; /*패딩 변수*/
display: inline-block;
height: 70%; padding: 0 var(--menu-pa); box-sizing: border-box;
text-align: center; align-content: center;
position: relative;
}
nav .menu > li:hover > a::after{
content: "";
position: absolute; left: var(--menu-pa); top: 100%;
width: calc(100% - var(--menu-pa)*2); height: 2px; background-color: black;
}
/* 서브메뉴 */
nav .menu > li > .sub-box{
position: absolute; left: 0; top: 100%;
width: 100%; height: 600px;
background-color: #fff;
z-index: -1; display: none;
text-align: start;
}
/* 색비교 */
nav .menu > li:nth-child(1) > .sub-box{
background-color: aliceblue;
}
nav .menu > li:nth-child(2) > .sub-box{
background-color: rgb(94, 143, 185);
}
nav .menu > li:nth-child(3) > .sub-box{
background-color: rgb(87, 121, 151);
}
nav .menu > li:nth-child(4) > .sub-box{
background-color: rgb(35, 49, 61);
}
/* 호버시 행동 */
nav .menu > li:hover > .sub-box{
display: block;
}
/* 아이콘 */
nav .icon-box{
width: 100px; height: 100%;
display: flex;
justify-content: space-between; align-items: center;
}
nav .icon-box .icon{
width: 10px;
height: 10px;
background-color: red;
}
</style>
</head>
<body>
<div class="wrap">
<header>
<img src="./header1.jpg" alt="">
<nav>
<div class="logo">로고</div>
<ul class="menu">
<li><a href="#">Menu1</a>
<div class="sub-box">
<ul class="submenu">
<li><a href="#">sub1-1</a></li>
<li><a href="#">sub1-2</a></li>
<li><a href="#">sub1-3</a></li>
</ul>
</div>
</li>
<li><a href="#">Menu2</a>
<div class="sub-box">
<ul class="submenu">
<li><a href="#">sub2-1</a></li>
<li><a href="#">sub2-2</a></li>
<li><a href="#">sub2-3</a></li>
</ul>
</div>
</li>
<li><a href="#">Menu3</a>
<div class="sub-box">
<ul class="submenu">
<li><a href="#">sub3-1</a></li>
<li><a href="#">sub3-2</a></li>
<li><a href="#">sub3-3</a></li>
</ul>
</div>
</li>
<li><a href="#">Menu4</a>
<div class="sub-box">
<ul class="submenu">
<li><a href="#">sub4-1</a></li>
<li><a href="#">sub4-2</a></li>
<li><a href="#">sub4-3</a></li>
</ul>
</div>
</li>
</ul>
<div class="icon-box">
<div class="icon"></div>
<div class="icon"></div>
<div class="icon"></div>
</div>
</nav>
<div class="bgb"></div>
</header>
</div>
<script>
$(function(){
$("header .menu").hover(function(){
$("header nav").addClass("act");
$("header .bgb").addClass("act");
},function(){
$("header nav").removeClass("act");
$("header .bgb").removeClass("act");
})
});
</script>
</body>
</html>