Hey friends, today in this blog you'll learn how to create a Fully Responsive Navigation Menu Bar using only HTML & CSS. In the earlier blog, I have shared how to create a Responsive Sidebar Menu using HTML & CSS and now it's time to create a navigation bar in html.
As you know the Menu Bar or Navigation Bar (Navbar) is important for any kind of website. Many websites have a responsive navbar or a responsive navbar with a dropdown menu. Essentially, responsive design is a way to put together a website so that it automatically scales its content and elements to match the screen size on which it is viewed. It keeps images from being larger than the screen width and prevents visitors from mobile devices from needing to do extra work to read your content.
In our design (Responsive Navigation Bar), as you can see in the preview image, there is a horizontal navigation bar or navbar with a logo on the left side and some navigation links on the right side. This is a very simple navigation bar and it is created using only HTML & CSS. The best part about this navigation bar is, it is fully responsive for any kind of device including mobile phones. On the pc, this navigation bar displayed in a horizontal line but on mobile devices, this navbar or navigation bar displayed in a vertical line. On the mobile, you have the option to show or hide the menu bar by clicking on the hamburger menu icon.
The concept behind shows or hide menu bar on menu icon click is simple. I used HTML <input> and <label> tag to show or hide menu bar. When the checkbox is checked and the menu bar is shown and when the checkbox is unchecked menu bar hidden. If you're feeling difficulty understanding what I am saying. You can watch a full video tutorial on this navigation bar in HTML.
Video tutorial of Responsive Navigation Bar in HTML
In the video tutorial, you have seen this is a pure CSS responsive navigation bar and I've used CSS @media property to make this navigation bar fully responsive for mobile devices. If you like this responsive navigation bar and want to get source codes of this program then you can easily copy the codes of this tutorial from the given copy boxes or you can also download the code files of this navigation menu bar.
If you're a beginner and you know a little bit of HTML & CSS then the codes and concept of this navigation bar will definitely help you to understand HTML & CSS more. This is a very simple responsive navigation bar with few and clean codes.
You might like this:
Responsive Navigation Bar [Source Codes]
Before sharing the source codes of this responsive navbar. Let's a few talks about the main tags and codes of this design. To create this responsive navbar I had used HTML & CSS only which means this is a pure CSS program. As you already know, this program is <ul> and <li> based design, that’s why we can create a menu or navigation links easily. I've used <input type="checkbox"> and <label for=""> tag to toggle menu bar in HTML for the mobile version. I also used the Fontawesome for a hamburger icon.
There are many things I left. Because I can't say all things in writing. I'm just talking about the main codes of this menu bar but don't worry you'll understand all the codes and concepts after getting the source code of this responsive navbar. To create this responsive navigation bar. First, you need to create two Files one HTML File and another one is CSS File. After creating these files just paste the following codes into your file. You can also download the source code files of this dropdown menu CSS design from the below download button.
HTML CODE:
CSS CODE:

Great, thanks broh
ReplyDeleteWelcome bro..Keep visiting
DeleteIt's amazing ui bro keep working
Deletebahut accha bro ....im your fan....bro your genuine person who post each and everything.....:) love from india
ReplyDeleteThank you so much bro.. keep visiting.
Deletebro why you have used fontaawesome icon because its decreasing the speed of website ....i want to ask can we use a icon instead of script icon ?
ReplyDeleteYou can download fontawsesome icons to use in offline.
DeleteCDN is the best way while downloading.
Deleteyaa aapne sahi bola download hojayega.....but bro mere pass computer mai already .png icon wali file padi hai aur jab mai upload kar raha hoon aapke code mai script ko remove kar k vo show nahi ho rahi h idk why ?
ReplyDeleteTumko html me img tag use karna padega.. agar .png file upload karna he toh
DeleteThank you for providing code bro.
ReplyDeleteYour welcome bro..keep visiting
DeleteGreat video but can you help me if i want to change the background photo because when i go to the section and change the name of your photo to mine it doesnt work and show it white blank page . Any idea ?
ReplyDeleteThank You!
make sure your img is in the same folder where you created HTML & CSS File. You can can send me screenshot of your problem in FB or Insta..
DeleteInstagram - www.instagram.com/coding.np
Facebook - www.facebook.com/coding.np
How can you make the list item stay a different color after clicking on it?
ReplyDeleteIn your example, the Home button is always a different color. How can you have that change with which item is clicked on?
watch this i already made a videoa about it.
Deletehttps://www.youtube.com/watch?v=3mjxYI7bGx0
I want to ask what is this coding mean i class="fas fa-bars" /i>. Can you please help me
ReplyDeleteThis is a font-awesome icon class name. Basically, font-awesome is a website which provides thousands of free icons for web developer/designer. So i used this i class="fas fa-bars" /i> for show that menu button(3 lines bars).
Deletehello, i copied and pasted this to try it out but only the html worked, the css didnt work, also happened when i copied from somewhere as well didnt work, again only the ntml ran, what am i doing wrong ?
ReplyDeleteThe html is pulling the css file from the same folder. Did you put the css file into a folder?
DeleteIf so, then make sure you tell the browser where to look:
folderName/style.css
OR you did not name the css file 'style.css'. If you named it something else, then you have to include the name in the html, so it knows which file to look for:
instead of:
yourFileName.css
rename it to:
style.css
OR change the html:
` rel="stylesheet" href="yourFileName.css" `
Hello,
ReplyDeleteThanks a lot for above tutorials.
I need to ask i tried to fixed position of navigation bar but it is not working.
Can you suggest me .I used almost same of your code and designed different color and effects .
Give position fixed to navbar. You can also contact on me Instagram for more help.
DeleteMuito muito muito obrigado pelos tutoriais !!!
ReplyDeleteVoçê tem sido " inspirador " !!!!
Thanks alot
ReplyDeleteYou're welcome
Deletegggggggg
ReplyDeleteHey Man. Excelent job! Thank you for sharing! I really appreciate it.
ReplyDeletekeep up the good work
You're welcome bro...Keep supporting.
DeleteHi thanks for the good work. I do appreciate.
ReplyDeleteHow can I stop scrolling on the page when the nav bar is open in mobile view
inside media property add this body overflow:hidden.. For more- contact on me Instagram
DeleteGiven codes is not working in my blogger website,why?,please hepl me Bro!
ReplyDeletecontact on me Instagram
DeleteYou are great codingnepal
ReplyDeleteThank you. Glad to hear that!
DeleteIt works really nice bro but when i am scrolling in sidebar the background page is scrolling bro and as the top bar(blue) is not sticky the bar goes up and we can clearly see the back page scrolling. can you please help me with how to lock scroll while in sidebar
ReplyDeleteContact me on Instagram.
DeleteThank you for sharing..I really appreciate it.
ReplyDeletekeep up the good work
You're welcome. Keep visiting.
DeleteThank you for this tuto,
ReplyDeleteI saw on youtube you mentioned java script to close the nav bar when clicking a link. Could you please tell me how to do it I am really struggling ?
Thank you for your help
Here I can't send you codes. Contact me on Instagram.
Deletegreat work, looking for many more projects from you
ReplyDeleteSure...Keep visiting.
DeleteWhen I preview on atom it works but on browser it doesn't work.
ReplyDeleteSir could I get your contact for explaining it briefly by sending recording and screenshots.
You can contact me on Instagram - https://www.instagram.com/coding.np
DeleteI see the code in your website(2 window frame) doesn't work responsively but the code in your download link works well. It could be grateful if you checked that, it will be helpful for other beginners.Thanks for your high quality information, just see your video in youtube.
ReplyDelete2 window frame means? If you elaborate it..it would be helpful.
DeleteI see the code in your website(2 window frame) doesn't work responsively but the code in your download link works well. It could be grateful if you checked that, it will be helpful for other beginners.Thanks for your high quality information, just see your video in youtube.
ReplyDeleteThanks for telling us and we'll update codes soon.
DeleteThis comment has been removed by a blog administrator.
ReplyDeleteWhat if I want to attach a image as a logo. How can I do that?
ReplyDeleteWatch this - https://youtu.be/WzQBAc8i73E
DeleteI want this header sticky. How can i do it?
ReplyDeleteHere is the codes - https://www.codingnepalweb.com/2020/09/responsive-personal-portfolio-website.html
DeleteHello. Thank you for sharing your code! See.. Everytime I refresh the page in a smaller width, the menu starts open. How can I fix that?
ReplyDeletePlease download files because you may did some mistakes on codes otherwise contact me on Email - codingnepalweb@gmail.com
Deletesir you help me in become a html developer my name is dhruv
ReplyDeleteSure...stay tuned with us.
DeleteThank you man,but could you make a video or reply a script here please so that the responsive navbar also hides on scroll.It would be a perfect video!
ReplyDeleteI've already made a blog and video on it Link - https://www.codingnepalweb.com/2020/10/responsive-sticky-navbar.html
Deletehello bro! I m new follower here ,impressed from your youtube channel so i came here,,
ReplyDeleteI m bit confused about you have used input tags and label just after the nav tags what is that for ,plz expain this point to me....Thanks
The input type checkbox and the label tag are used to toggle the navbar means to show or hide the navbar on menu icon click. In the label tag, there is a for="" attribute which is used to control the checkbox. When you click the menu icon which is inside the label tag, the checkbox will be checked and the navbar is shown, and when you again click on that menu icon, the checkbox will be unchecked and the navbar hidden.
DeleteThis navbar show or hide is only possible with these tags (input type="checkbox" and label). And I have placed the input tag after the nav and before the ul tag, just because the checkbox will not work if you put the input tag inside the ul tag. If you put the input tag inside the ul tag then this tag will be the child of ul and ul will be the parent of input. Remember that, the child can't control the parent tag so, we can't show/hide the navbar if we make input to a child.
Bro cam i get ypur website theme
ReplyDeleteHere is the answer - https://www.codingnepalweb.com/p/f.html
DeleteHi, when you press the button, the menu comes from the left. How do I change it so that it's coming from the right or the top (going down)?
ReplyDeleteI have this error GET https://kit.fontawesome.com/a076d05399.js net :: ERR_ABORTED 403 help
ReplyDeleteHello,
ReplyDeleteI am an amatuer. I tried several times to modify the menu, but not successdful. I hope you can rewrite some of the code. The are two requirememnts.
1. The hamburger changes to "cross" when it is pressed.
2. The menu slide from buttom to top.
Thanks
which software did you use ?
ReplyDeletewhich software did you use for html and css
ReplyDeleteman you are just awesome <3
ReplyDeletePost a Comment
We welcome relevant and respectful comments. Off-topic or spam comments may be removed.