To add a Webflow navbar, go to Add Elements (A) → Advanced → Navbar and drag it onto the canvas. The Navbar component includes a Brand link, Nav Menu with Nav Links, and a Menu Button (hamburger) that appears automatically on Tablet and below. For dropdown menus, drag a Dropdown element from Add Elements (A) → Advanced → Dropdown into the Nav Menu. The Menu Button has a built-in hamburger-to-X animation and triggers the mobile menu without any Interactions setup.
Webflow Navbar: Dropdowns, Hamburger Menu, and Mobile Styling
Webflow's Navbar is a purpose-built navigation component that handles the most complex parts of nav building automatically: the hamburger menu icon, mobile menu open/close animations, dropdown toggle behavior, and current-page active states. Unlike building a nav from scratch with Div Blocks, the Navbar component gives you structured, semantic HTML with built-in ARIA attributes and keyboard navigation. This tutorial covers the complete Navbar workflow from adding the component, configuring dropdowns with hover or click triggers, styling the hamburger menu and mobile menu overlay, setting current page active states, and making the entire nav responsive across all four breakpoints. This tutorial is specifically about the built-in Navbar component — custom standalone dropdowns not connected to a navbar are covered in the Custom Dropdowns tutorial.
Prerequisites
- A Webflow project open in the Designer with at least one page
- Your logo image uploaded to the Asset Manager (cloud icon, left toolbar) or a text-based brand name ready
- Your site's navigation structure planned: list the main links and which ones need dropdown sub-menus
Step-by-step guide
Add the Navbar component and explore its structure
Add the Navbar component and explore its structure
Open the Add Elements panel (A), scroll to the Advanced section, and drag the Navbar element onto the canvas at the top of your page — typically above the hero section. Webflow automatically creates the full navbar structure. Open the Navigator (Z) to see: Navbar (wrapper) → Brand (logo link) + Nav Menu (link container) + Menu Button (hamburger). Inside the Nav Menu you will find pre-added Nav Link elements. The Menu Button is automatically set to Display: None on Desktop (Style Panel → Layout → Display) and becomes visible on Tablet and below. Give the Navbar element a class name like 'navbar' to begin styling.
Expected result: A full navbar structure appears at the top of the canvas with a logo placeholder, navigation links, and a hamburger button (hidden on desktop).
Add your logo and navigation links
Add your logo and navigation links
Click the Brand element inside the Navbar. In Element Settings (D) → Link type, leave it as 'Page' and select your homepage so the logo links to your home page. Inside the Brand element, add an Image element (Add Elements A → Basic → Image) and assign your logo in Element Settings (D) → Source. Set a fixed width for the logo (e.g., Style Panel → Size → Width: 120px, Height: Auto). For navigation links, click each Nav Link in the Nav Menu, open Element Settings (D), and set the link type to 'Page' or 'URL' for each destination. Double-click the Nav Link text on the canvas to rename it (e.g., 'Home', 'About', 'Services', 'Contact').
Expected result: The navbar shows your logo image on the left and named navigation links across the center or right.
Add a Dropdown to the Nav Menu
Add a Dropdown to the Nav Menu
To add a dropdown sub-menu under a nav item, first delete or keep the existing Nav Link you want to replace with a dropdown. Open Add Elements (A) → Advanced → Dropdown and drag it inside the Nav Menu (confirm in Navigator Z). The Dropdown element creates a Dropdown Toggle (the visible link with a triangle arrow) and a Dropdown List (the hidden sub-menu). Inside the Dropdown List, you will find Dropdown Links — click each to set destinations in Element Settings (D). Rename the Dropdown Toggle text by double-clicking it on the canvas (e.g., 'Services'). Add more Dropdown Links by duplicating existing ones (Cmd+D) or dragging new ones from Add Elements.
Expected result: A dropdown toggle link appears in the navbar. Clicking or hovering it (depending on settings) reveals a floating list of sub-links below the nav.
Configure dropdown trigger: hover vs. click
Configure dropdown trigger: hover vs. click
By default, Webflow dropdowns open on click. To switch to hover open, select the Dropdown element → Element Settings (D) → check 'Open menu on hover'. This changes the trigger from click to mouseenter/mouseleave. Hover-triggered dropdowns are better for desktop navigation; click-triggered are better for mobile-inclusive designs since mobile devices have no hover state. Consider keeping click for all dropdowns and relying on the built-in toggle behavior, which Webflow handles automatically. You can also set the animation in the Interactions panel (H) → Component triggers → 'Dropdown Opens' and 'Dropdown Closes' to customize the open/close animation beyond the default instant appearance.
Expected result: The dropdown opens on hover (if enabled) or click. The setting applies to that specific Dropdown element and can be set differently for each dropdown in the navbar.
Style the mobile menu and hamburger button
Style the mobile menu and hamburger button
Switch to the Tablet breakpoint (Breakpoint Bar, top of Designer — select the Tablet icon). On tablet and below, the Nav Menu collapses and the Menu Button (hamburger) becomes visible. Click the Menu Button — it has three built-in styles: Default (horizontal lines), Open (X icon), and a built-in transition animation between them that Webflow handles without Interactions. Style the hamburger by selecting it and modifying Style Panel → Effects → Box Shadows, Borders → Border Radius, or Backgrounds → Color. For the mobile Nav Menu itself (the panel that slides down when the hamburger is clicked), select the Nav Menu element → Style Panel and set: Background color, padding, font size, and text alignment for mobile-specific styling. The mobile menu behavior can be changed in the Navbar Element Settings (D) → Menu type: Dropdown (default, slides down from nav), Over Right (slides in from right), or Over Left.
Expected result: On Tablet breakpoint, the hamburger icon is visible. Clicking it opens the mobile nav menu. The menu styling (colors, fonts, padding) matches the mobile design.
Apply Current state active styling to Nav Links
Apply Current state active styling to Nav Links
Webflow automatically applies a 'Current' state class to the Nav Link that corresponds to the current page the visitor is on. To style the active link, select any Nav Link in the navbar. In the Style Panel Selector field at the top, click the States dropdown and select 'Current'. Now apply your active styles: change Background color, Font color, add a Bottom Border, or change Font Weight. These styles automatically apply to whichever page's Nav Link matches the current URL. For Dropdown Links, the Current state applies to the specific dropdown link matching the current page — the parent Dropdown Toggle does not automatically get styled as current (a known Webflow limitation).
Expected result: When visiting a page, its corresponding Nav Link renders with the Current state styles you defined (e.g., underline, accent color, or bold weight).
Fix z-index to prevent dropdowns from hiding behind other elements
Fix z-index to prevent dropdowns from hiding behind other elements
Dropdowns that appear behind hero images, sliders, or sticky sections are a common Webflow navbar issue. This is a z-index stacking context problem. Select the Navbar element → Style Panel → Position → set Position to Sticky (Top: 0) or Relative. Set Z-index to 999 (or 1000 for sticky navbars). Also check the Dropdown List element itself — it may need its own Z-index if it appears inside a Relative-positioned parent. Select the Dropdown List → Style Panel → Position → Relative → Z-index: 1000. For sticky navbars, also check that the hero section or slider below does not have a higher Z-index that would place it visually above the dropdown.
Expected result: Dropdown menus appear on top of all other page content. The navbar itself renders above hero images and any below-fold sections when sticky.
Complete working example
1WEBFLOW NAVBAR — VISUAL STEPS SUMMARY231. ADD NAVBAR4 Add Elements (A) → Advanced → Navbar5 Navigator (Z): Navbar → Brand + Nav Menu + Menu Button6 Give Navbar class: 'navbar'782. BRAND + LINKS9 Brand → Element Settings (D) → Link to Homepage10 Brand → Add Image → assign logo → Style Panel → Width: 120px11 Each Nav Link → Element Settings (D) → set destination12133. ADD DROPDOWN14 Add Elements (A) → Advanced → Dropdown → drag INTO Nav Menu15 Dropdown Toggle: rename text on canvas16 Dropdown List → add/rename Dropdown Links via Element Settings (D)17 Preview: Dropdown element → Settings (D) → Menu → Show18194. DROPDOWN TRIGGER20 Dropdown element → Settings (D) → Open menu on hover (optional)21 Custom animation: Interactions (H) → Component triggers → Dropdown Opens/Closes22235. MOBILE MENU24 Switch to Tablet breakpoint25 Navbar Settings (D) → Menu type: Dropdown / Over Right / Over Left26 Select Nav Menu → Style Panel → set mobile Background, Padding, Font size27 Menu Button → Style Panel → customize hamburger appearance28296. CURRENT STATE30 Nav Link → Style Panel → States → Current31 Set active styles (color, border, weight)32337. Z-INDEX34 Navbar → Style Panel → Position → Sticky or Relative → Z-index: 99935 Dropdown List → Position → Relative → Z-index: 1000Common mistakes
Why it's a problem: Dropdown menu is hidden behind the hero section or a background video
How to avoid: Set the Navbar element Position to Sticky or Relative (Style Panel → Position), then set Z-index to 999. If the dropdown list specifically is still behind content, select the Dropdown List element → Style Panel → Position → Relative → Z-index: 1000.
Why it's a problem: The hamburger menu button is visible on Desktop
How to avoid: The Menu Button should have Display: None set at the Desktop breakpoint. If you accidentally changed this, select the Menu Button → Style Panel → Layout → Display → None while on the Desktop breakpoint. Switch to Tablet breakpoint and verify it shows as Display: Block or Flex.
Why it's a problem: Nav Links do not show Current state styling on the active page
How to avoid: Current state styles only apply when the Nav Link's URL exactly matches the current page URL. Check that the Nav Link's destination is set to 'Page' and points to the correct page — not a URL that includes query strings or trailing slashes. Also verify you styled the 'Current' state and not the 'Hover' state in the States dropdown.
Why it's a problem: Adding a Dropdown element to the page instead of inside the Nav Menu
How to avoid: The Dropdown must be added inside the Nav Menu element (not as a sibling of the Navbar). Open Add Elements (A) → Advanced → Dropdown, then in the Navigator (Z) drag it to be a child of the Nav Menu. Placing it at the wrong level breaks the navbar's built-in mobile menu behavior.
Best practices
- Always use Webflow's built-in Navbar component instead of building a nav from Div Blocks — the component generates semantic HTML, has built-in ARIA attributes, and handles mobile toggle behavior automatically.
- Set the Current state styles on Nav Links to give users a clear visual indicator of which page they are on — this is a basic accessibility and UX requirement.
- Test the mobile menu on real devices, not just Webflow's preview mode — the hamburger animation and menu open/close behavior can feel different on actual touch screens.
- Keep the Navbar Z-index at 999 or above, especially when using sticky positioning, to ensure dropdown menus always render above other page content.
- Avoid placing the Navbar inside a Section element — the Navbar component is designed to be a direct child of the Body and span the full viewport width.
- For hover dropdowns on desktop: also ensure they work on click for keyboard users and touch screens — Webflow's default click trigger is more accessible.
- Use Component triggers in the Interactions panel (H) → Dropdown Opens/Closes for custom dropdown animations — this keeps the animation tied to the built-in state machine rather than a custom implementation.
Still stuck?
Copy one of these prompts to get a personalized, step-by-step explanation.
I'm using Webflow's built-in Navbar component and I need to: 1) add a hover-triggered dropdown menu under 'Services' with 4 sub-links, 2) style the mobile hamburger menu to open a full-height side panel from the right, and 3) make the current page nav link show an underline. Give me step-by-step Webflow Designer instructions referencing exact panel names like 'Element Settings (D)', 'Style Panel (S)', and the Navigator (Z).
In my Webflow navbar, the dropdown menu is appearing behind my hero section. My hero has a background image set to Cover. How do I fix the z-index issue so the dropdown always appears on top? Also, does the Navbar element need to be set to a specific position type for z-index to take effect in Webflow?
Frequently asked questions
Can I have multiple levels of dropdowns (nested dropdowns) in Webflow?
Webflow's Navbar component does not support nested dropdowns natively. The Dropdown element only allows one level of sub-links. To create two-level dropdowns (a dropdown item that reveals a secondary dropdown), you need to build a custom solution using Div Blocks and Interactions, or use a third-party Webflow app like Navbar X or DropdownNav. This is a known limitation listed in Webflow's documentation.
How do I make a transparent navbar that becomes solid on scroll in Webflow?
This is covered in the Sticky Elements tutorial but the basics are: Set the Navbar background to transparent. Use Interactions panel (H) → Page triggers → While page is scrolling. At 0% scroll: background rgba(0,0,0,0) (transparent). At 5-10% scroll: background rgba(255,255,255,1) (solid). Add an Opacity transition in the animation settings. This creates a smooth fade from transparent to solid as the user scrolls down.
Why is my Webflow navbar showing on top of a modal or popup?
Your modal or popup likely needs a higher Z-index than the navbar. The Navbar's Z-index is typically set to 999. Set your popup's Z-index to 1000 or higher: select the popup element → Style Panel → Position → Absolute or Fixed → Z-index: 1000. Also make sure the popup is positioned outside of any overflow:hidden parent containers, which can clip fixed-position children.
Talk to an Expert
Our team has built 600+ apps. Get personalized help with your project.
Book a free consultation