Responsive Dropdown Menu by using HTML , CSS , JS

Responsive Dropdown Menu by using HTML , CSS , JS


HTML CODE

 <!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>
    <link rel="stylesheet" href="style.css">
</head>
<body>
    <div class="btn" id="button" onclick="sidebar()">
        &#8801; 
    </div>
    <header id="head">
       
        <h2>NICT WEB</h2>
        <nav class="main-menu">
            <ul>
                <li><a href="">Link1</a></li>
                <li class="dropdown"><a href="">Link2</a>
                    <ul class="dropdown-list">
                        <li><a href="">Link2.1</a></li>
                        <li><a href="">Link2.2</a></li>
                        <li><a href="">Link2.3</a></li>
                        <li><a href="">Link2.4</a></li>
                        <li><a href="">Link2.5</a></li>
                    </ul>
                </li>
                <li><a href="">Link3</a></li>
                <li><a href="">Link4</a></li>
                <li><a href="">Link5</a></li>
            </ul>
        </nav>
    </header>
    <script src="script.js"></script>
</body>
</html>

CSS CODE

*{
    margin0;
    padding0;
    box-sizingborder-box;
    text-decorationnone;
    list-stylenone;
}
.btn{
    displaynone;
}
header{
    backgroundrgb(210,210,233);
    displayflex;
    justify-contentspace-around;
}

header h2{
    font-size35px;
    line-height80px;
    text-shadow3px 3px 5px rgb(4949,47);
    colorcyan;
    padding15px;
}
header .main-menu{
    positionrelative;
}
header .main-menu > ul{
  height80px
  displayflex
  justify-contentcenter;
  align-itemscenter;
}

header .main-menu ul li{
    width150px;
    margin-left15px;
}

header .main-menu ul li a{
    displayblock;
    background-colorchocolate;
    padding15px 25px;
    colorcornsilk;
}

header .main-menu ul li a:hover{
box-shadow3px 3px 4px darkblue;
backgroundfloralwhite;
colorgray;
transitionall 0.2s ease-in-out;
}

header .dropdown{
    positionrelative;
}

header .dropdown-list{
    positionabsolute;
    top:50px;
    opacity0;
    visibilityhidden;
    transformrotateY(180deg);
    backface-visibilityhidden;
}

header .dropdown:hover .dropdown-list{
    positionabsolute;
    opacity1;
    visibilityvisible;
    transformrotateY(0deg);
    transitionall 0.5s ease-in-out;
}

header .dropdown .dropdown-list li{
    margin0;
}

@media screen and (max-width:800px){
    .btn{
        z-index1;
        displayinline-block;
        cursorpointer;
        positionrelative;
        padding25px;
        font-size25px;
        backgroundrgb(180,180,180);

    }
    .active{
        transformtranslateX(0%);
        transitionall 0.5s ease-in-out;
    }
    .btnsilde{
        transformtranslateX(300px);
        transitionall 0.5s ease-in-out;
    }
   header{
       z-index-1;
       overflowauto;
       flex-directioncolumn;
       align-itemsflex-start;
       justify-contentflex-start;
       positionfixed;
       top0px;
       width350px;
       height100%;
       transformtranslateX(-100%);
   }
   header .main-menu{
        width100%;
        heightauto;
   }

   header .main-menu > ul{
       positionrelative;
       displayblock;
       heightauto;
       width100%;
   }

   header .main-menu ul li{
       positionrelative;
   }

   header .main-menu ul li a{
       displayblock;
   }

   header .main-menu ul li a:hover{
       border-radius5px;
       margin0 auto;
   }

   header .dropdown{
       displayblock;
   }
   header .dropdown .dropdown-list{
    positionabsolute;
    top:0px;
    }

    header .dropdown:hover .dropdown-list{
        positionrelative;
        }
}

JS Code

function sidebar(){
    var btn=document.getElementById("button");
    btn.classList.toggle("btnsilde");
   var header =document.getElementById("head");
   header.classList.toggle("active");
}

Comments

Popular posts from this blog

How to make simple bill maker by using python tkinter

Make a GST Calculator using HTML and JavaScript

Write a program to find the sum of 1/2+4/3+5/6+8/7+9/10 using loop in java