Skills/CSS3, SCSS

menu_horizontal

개발자 윤구나 2022. 9. 13. 09:26
<!DOCTYPE html>
<html lang="ko">
  <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>menu_04</title>
    <style>
      /*-------- default setting --------*/
      * {margin: 0; padding: 0;}
      a {color: black; text-decoration: none;}
      li {list-style: none;}

      /*-------- lnb02 --------*/
      .lnb02>ul {
        width: 1000px; /* position의 width를 정해줘야함. 값이 없으면 화면상의 100%로 설정됨. */
        position: relative;
      }
      .lnb02 li {
        width: 200px; height: 50px;
        float: left;
      }
      .lnb02 li a {
        display: block;
        background-color: black;
        color: white;
        text-align: center;
        line-height: 50px;
      }
      .lnb02 ul ul {
        width: 800px; /* li의 width: 200px에 영향 받고 세로로 떨어짐. 가로로 만드려면 width를 줘야함. */
        position: absolute; /* 자식은 position: absolute, 부모는 position: relative 걸어준다. */
      }
      .lnb02 ul li:nth-child(3) ul {
        left: 100px;
      }
      .lnb02 ul li:nth-child(4) ul {
        right: 200px;
      }
      .lnb02 ul .ul05 { /* 이렇게 클래스를 걸어도 되고, 위 처럼 nth-child 걸어줘도 됨. */
        right: 0;
      }
      .lnb02 li li {
        display: none;
      }
      .lnb02 li:hover li {
        display: block;
      }
      .lnb02>ul>li>a:hover { 
        background-color: white;
        color: red;
      }
      .lnb02 li li a:hover {
        background-color: #ccc;
        color: black;
      }
    </style>
  </head>
  <body>
    <nav class="lnb02">
      <ul>
        <li><a href="#">menu01</a>
          <ul>
            <li><a href="#">menu01-1</a></li>
            <li><a href="#">menu01-2</a></li>
            <li><a href="#">menu01-3</a></li>
            <li><a href="#">menu01-4</a></li>
          </ul>
        </li><!--menu01-->
        <li><a href="#">menu02</a>
          <ul>
            <li><a href="#">menu02-1</a></li>
            <li><a href="#">menu02-2</a></li>
            <li><a href="#">menu02-3</a></li>
            <li><a href="#">menu02-4</a></li>
          </ul>
        </li><!--menu02-->
        <li><a href="#">menu03</a>
          <ul>
            <li><a href="#">menu03-1</a></li>
            <li><a href="#">menu03-2</a></li>
            <li><a href="#">menu03-3</a></li>
            <li><a href="#">menu03-4</a></li>
          </ul>
        </li><!--menu03-->
        <li><a href="#">menu04</a>
          <ul>
            <li><a href="#">menu04-1</a></li>
            <li><a href="#">menu04-2</a></li>
            <li><a href="#">menu04-3</a></li>
            <li><a href="#">menu04-4</a></li>
          </ul>
        </li><!--menu04-->
        <li><a href="#">menu05</a>
          <ul class="ul05">
            <li><a href="#">menu05-1</a></li>
            <li><a href="#">menu05-2</a></li>
            <li><a href="#">menu05-3</a></li>
            <li><a href="#">menu05-4</a></li>
          </ul>
        </li><!--menu05-->
      </ul>
    </nav>    
  </body>
</html>