본문 바로가기
카테고리 없음

[HTML&CSS] 공공기관에서 자주 사용되는 html 메뉴 - 메가메뉴

by 펜네임 2019. 10. 18.

HTML

<!DOCTYPE html>
<html lang="en" dir="ltr">
    <head>
        <meta charset="utf-8">
        <title></title>
        <link rel="stylesheet" type="text/css" href="style.css">
    </head>
    <body>
        <!-- 메뉴바 -->
        <div class="navbar">
            <a href="#home">홈</a>

            <!-- 드롭다운1 -->
            <div class="dropdown">
                <!-- 드롭다운 버튼 -->
                <button class="dropbtn">메가메뉴1
                    <i class="fa fa-caret-down"></i>
                </button>
                <!-- 드롭다운 내용물 -->
                <div class="dropdown-content">
                    <!-- 드롭다운 내용물 : 제목 -->
                    <!-- <div class="header">
                        <h2>메가 메뉴</h2>
                    </div> -->
                    <!-- 드롭다운 내용물 : 카테고리 모음 -->
                    <div class="row">
                        <div class="column">
                            <h3>카테고리1</h3>
                            <a href="#">링크1</a>
                            <a href="#">링크2</a>
                            <a href="#">링크3</a>
                        </div>
                        <div class="column">
                            <h3>카테고리2</h3>
                            <a href="#">링크1</a>
                            <a href="#">링크2</a>
                            <a href="#">링크3</a>
                        </div>
                        <div class="column">
                            <h3>카테고리3</h3>
                            <a href="#">링크1</a>
                            <a href="#">링크2</a>
                            <a href="#">링크3</a>
                        </div>
                    </div>
                </div>
            </div>

            <!-- 드롭다운2 -->
            <div class="dropdown">
                <!-- 드롭다운 버튼 -->
                <button class="dropbtn">메가메뉴2
                    <i class="fa fa-caret-down"></i>
                </button>
                <!-- 드롭다운 내용물 -->
                <div class="dropdown-content">
                    <!-- 드롭다운 내용물 : 제목 -->
                    <!-- <div class="header">
                        <h2>메가 메뉴</h2>
                    </div> -->
                    <!-- 드롭다운 내용물 : 카테고리 모음 -->
                    <div class="row">
                        <div class="column">
                            <h3>카테고리4</h3>
                            <a href="#">링크1</a>
                            <a href="#">링크2</a>
                            <a href="#">링크3</a>
                        </div>
                        <div class="column">
                            <h3>카테고리5</h3>
                            <a href="#">링크1</a>
                            <a href="#">링크2</a>
                            <a href="#">링크3</a>
                        </div>
                        <div class="column">
                            <h3>카테고리6</h3>
                            <a href="#">링크1</a>
                            <a href="#">링크2</a>
                            <a href="#">링크3</a>
                        </div>
                    </div>
                </div>
            </div>

            <!-- 드롭다운3 -->
            <div class="dropdown">
                <!-- 드롭다운 버튼 -->
                <button class="dropbtn">메가메뉴3
                    <i class="fa fa-caret-down"></i>
                </button>
                <!-- 드롭다운 내용물 -->
                <div class="dropdown-content">
                    <!-- 드롭다운 내용물 : 제목 -->
                    <!-- <div class="header">
                        <h2>메가 메뉴</h2>
                    </div> -->
                    <!-- 드롭다운 내용물 : 카테고리 모음 -->
                    <div class="row">
                        <div class="column">
                            <h3>카테고리7</h3>
                            <a href="#">링크1</a>
                            <a href="#">링크2</a>
                            <a href="#">링크3</a>
                        </div>
                        <div class="column">
                            <h3>카테고리8</h3>
                            <a href="#">링크1</a>
                            <a href="#">링크2</a>
                            <a href="#">링크3</a>
                        </div>
                        <div class="column">
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </body>
</html>

 

CSS

* {
    box-sizing: border-box;
}

body {
    margin: 0;
}

/* 메뉴 */
.navbar {
    overflow: hidden;
    background-color: #F1F1F1;
    font-family: Arial;
    box-shadow: 0px 8px 16px 0px rgba(0,65,122,0.2);
    /* z-index: 1; */
}

/* 메뉴 안의 링크 */
.navbar a {
    float: left;    /*요소를 왼쪽으로 보냄*/
    font-size: 16px;
    color: black;
    text-align: center;
    padding: 14px 16px;
    text-decoration: none;
}

/* 드롭다운 내용물 */
.dropdown {
    float: left;
    overflow: hidden;
}

/* 드롭다운 버튼 */
.dropdown .dropbtn {
    font-size: 16px;
    border: none;
    outline: none;  /*테두리 밖에 넣는 라인*/
    color: black;
    padding: 14px 16px;
    background-color: inherit;
    font: inherit;  /* Important for vertical align on mobile phones */
    margin: 0; /* Important for vertical align on mobile phones */
}

/* 메뉴 링크에 호버 시*/
.navbar a:hover, .dropdown:hover .dropbtn {
    background-color: white;
    color: #0081F2;
    font-weight: bold;
    border-bottom: #0081F2 solid 3px;
}

/* 드롭다운 내용물(기본상태를 숨김으로) */
.dropdown-content {
    display: none;
    position: absolute;
    width: 100%;
    left: 0;
    border-bottom: #0081F2 solid 3px;
    /* z-index: 1; */
}

/* 메가메뉴 제목 (선택사항) */
.dropdown-content .header {
    background: white;
    padding: 16px;
    color: #0081F2;
}

/* 드롭다운 메뉴에 호버 시 보이게 함 */
.dropdown:hover .dropdown-content {
    display: block;
}

/* 서로 붙어있는 칸 세 개 생성 */
.column {
    float: left;
    width: 33.33%;
    padding: 10px;
    background-color: white;
    height: 250px;
}

/* 칸 안의 링크 */
.column a {
    float: none;
    color: black;
    padding: 16px;
    text-decoration: none;
    display: block;
    text-align: left;
}

/* 호버 시 배경 컬러 */
.column a:hover {
    background-color: white;
    border: none;
    font-weight: none;
}

/* 칸 다음 부분 비우기 */
.row:after {
    content: "";
    display: table;
    clear: both;
}

 

 

 

공공기관에서 자주 사용(2019.10 기준)되는 메뉴.

 

- 참고 : www.w3schools.com 

댓글