Stop Using Sticky Navigation on Mobile
2019-10-06
Stop styling your web elements to be âstickyâ on mobile. This creates a horrible experience for your users and also looks like trash from a UI perspective. Donât style your navigation (or any components for that matter) to be âstickyâ on mobile. They create poor experiences for your users and take away valuable screen space.
What do you mean by âstickyâ?
The concept of sticky elements include but are not exclusive to:
- Navigations that follow users as they scroll
- Chatbot prompt bubbles eating up half the bottom of the screen
- Banners or modal prompts that pester the user to âsign up, accept cookiesâ etc.
These are bad and you should feel bad for implementing them. Spacing and layout is a critical part of a productâs design and greatly impacts the experience of its users. Stop screwing it up with ugly sticky elements.
First, letâs breakdown âstickyâ navigations and why theyâre terrible. Weâll also go over some easy solutions to avoid making these bad design decisions in the first place.
The stalking navigation
When you make a decision to eat away >50px of space at the top of the page for your siteâs navigation - youâre hurting your users. Youâre also making their time interacting with your website more painful.
âWait!â I hear sticky-nav defenders exclaim, âthis navigation bar makes it so the user can easily interact with the siteâs pages!â
What absolute rubbish. A user should only see a websiteâs navigation when they need to use it. This isnât rocket science.
Letâs a take a look at the problem:
Knowing when to show navigation can be easily solved where the user isnât bogged down with a chunk of their screen permanently taken away, all the while still having access to the navigation. This can be fixed by simply understanding the user context at a given time. See below:
Here the navigation flows up with the rest of the page as the user scrolls the main content into view. Donât worry about creating confusion - the user knows the navigation is still at the top of the page because they watched it scroll out of view. This is best paired by having a matching navigation in the footer of the page as well. That way, when the user makes it to the end of a specific view they can change pages right in the âfooterâ. No need to scroll back to the top.
The best of both worlds?
Maybe you want to hide the navigation without losing the flexibility of it always being accessible at the top of the page? This is possible, although I find it still somewhat intrusive on the user. An easy way achieve this is by displaying the navigation when users perform a specific action, such as:
- Long or multiple upward swipes on the page
- Pull down menu from top of current view (easily shown to user)
Navigations arenât the only culprits
I wish that navigation items were the only sinners of the âstickyâ position on mobile - but they are not alone. A few other problematic components include:
- Chatbot or support âbubblesâ
- âAgree to our cookiesâ prompts
- Time-based pop-up modals
Every time you implement one of these components, somewhere in the world a puppy dies. Seriously - donât be part of the problem and build these things. Push back on âmarketing researchâ or team leads who tell you that this crap works. Youâre making the mobile web worse for everyone and setting a terrible precedent for future developers.
Stay static, my friends!