/bubble-tutorials

How to create a collapsible menu in Bubble

Learn how to create a smooth, user‑friendly collapsible menu in Bubble with simple steps that boost navigation and improve your app’s UX.

Matt Graham, CEO of Rapid Developers

Book a call with an Expert

Starting a new venture? Need to upgrade your web or mobile app? RapidDev builds Bubble apps with your growth in mind.

Book a Free Consultation

How to create a collapsible menu in Bubble

A collapsible menu in Bubble is created by placing the menu inside a group and toggling that group’s collapse height when hidden property. Then you show/hide that group with a custom state or a workflow triggered by a button (like a hamburger icon). When the group hides, the page layout collapses smoothly; when it shows, the group expands again.

 

How to Build It Step‑by‑Step

 

The core idea is: put all menu items inside one Group, make that group collapsible, and then control its visibility using a custom state or a simple workflow.

  • Create the menu group: Add a Group to the page. Inside it, place your menu items (buttons, texts, icons, etc.). In the Group’s Layout settings, check “This element is visible on page load” if you want it open by default, and always check “Collapse height when hidden”.
  • Set the container layout: If the page or parent group uses a column layout, Bubble will automatically slide things up/down when the collapsible group hides.
  • Add a toggle trigger: Usually an icon (hamburger). Select the icon → Start/Edit Workflow → choose Element Actions → Toggle and select the menu group. This action shows the group if hidden, hides it if visible.
  • Optional: using a custom state: On the page, create a custom state called isOpen (type yes/no). Clicking the icon sets isOpen = not isOpen. Then set the menu group’s Conditional tab: “When Page’s isOpen is yes → This element is visible”.
  • Check transitions: If you want smooth animation, enable “animate collapse” in the group’s Layout settings (available on new responsive engine).

 

// Example: Custom state toggle workflow
When Icon Menu is clicked →
Set state: Page’s isOpen = not Page’s isOpen

 

This setup uses only Bubble’s native visibility rules plus collapse behavior. No plugins, no hacks, and fully supported by Bubble’s responsive engine.

Explore More Valuable No-Code Resources

How to integrate Bubble.io with Git?

Learn how to seamlessly integrate Bubble.io with Git through our comprehensive step-by-step guide. Perfect for beginners and professionals.

Explore

How to integrate Bubble.io with Reddit Ads?

Learn how to seamlessly integrate Bubble.io with Reddit Ads using our easy step-by-step guide. Boost your ad management today!

Explore

How to integrate Bubble.io with AWS S3?

Explore our step-by-step guide on integrating Bubble.io with AWS S3, making your app development process more efficient and secure.

Explore

How to integrate Bubble.io with Lucidchart?

Follow our step-by-step guide to seamlessly integrate Bubble.io with Lucidchart, enhancing your workflow & productivity.

Explore

How to integrate Bubble.io with Kentico?

Learn how to seamlessly integrate Bubble.io and Kentico with our comprehensive, easy to follow step-by-step guide.

Explore

How to integrate Bubble.io with Box?

Discover easy-to-follow steps for integrating Bubble.io with Box. Boost your workflow and secure your files seamlessly today.

Explore

Stuck in Bubble.io? We’re here to help!

Fix broken workflows | Optimize logic | Boost performance | Scale with confidence

4.9
Clutch rating 🌟
600+
Happy partners
17+
Countries served
190+
Team members

By clicking “Accept”, you agree to the storing of cookies on your device to enhance site navigation, analyze site usage, and assist in our marketing efforts. View our Privacy Policy for more information.

Cookie preferences