Styling The Divi Mobile Menu Module
Another One For The Menu Module Series
By now our Divi Menu Module series is quite hug. By popular demand, we are now going to show you how to customize and style the Divi mobile menu using the Theme Builder Menu module! We are so excited for this one!
Learn, Not Just Copy
The format will be like our submenu and mega menu tutorials, with graphics and snippets to not only copy but to practice learning as well! With this tutorial, you will be able to style and customize the Divi Theme Builder mobile menu module, along with the image, hamburger menu, dropdown, menu items, and submenu items. You will learn how to change things like the colors, border, spacing, hover effects, and more!
Understanding The Divi Mobile Menu Structure
First, we need to understand how the Divi mobile menu is made so we can target individual elements of it separately to create your own design style. There are a lot of parts, but we are only going to cover the most essential and helpful parts here. Those include:
- The Header
- Logo Image
- Hamburger Icon
- The Dropdown Menu
- Menu Items & Links
- Submenu Items & Links
Here is an example of how the Divi Menu module looks by default on mobile:

Here is an example of how the Divi Menu module looks by default on mobile:

Let’s get started! The tutoral is divided into sections. Each section represents a different part of the mobil menu:
- A heading title
- An intro parapraph
- A graphic representation of that specific element
- The CSS selector to target that element
- Some code styling ideas
Where To Place And Customize The Code Snippets
If you are using our free Divi child theme, place the snippet into the style.css file. Otherwise, place these in your Divi>Theme Options>Custom CSS code box. If you need help, check out our complete guide on Where To Add Custom Code In Divi.
You will find a snippet for each part of the menu in each section of the tutorial. Once you have our CSS selector ready, you can start adding custom code where it says “YOUR CSS HERE.” (be sure to remove that text)
Default Mobile Menu header
Let’s start with the menu header. This is the part that holds the logo and hamburger menu. There are limited settings in Divi, so this CSS is going to be needed any time you want to change the color or adjust spacing.

/*edit the default Divi mobile menu header*/
#main-header {
YOUR CSS HERE
}
Custom Style Ideas
The following is a list of some ideas for things you might want to do to style the overall submenu. You can choose to do this by placing the snippets into the selector shown above.
padding: 0!important;
background: #000000!important;
Divi Mobile Menu Logo Image
You can do a couple things to the logo image as well. On our site, we have the logo overlapping the header and page content, which requires some spacing and sizing adjustments. You could also apply a border or box shadow.

/*edit the Divi default mobile menu logo image*/
#logo {
YOUR CSS HERE
}
/*edit the Divi mobile menu logo image*/
.et_pb_menu__logo img {
YOUR CSS HERE
}
Custom Style Ideas
Here are some ideas you could do to style the Divi mobile logo image. You can choose to do this by placing the snippets into the selector shown above.
padding: 30px;
width: 80%;
max-width: 200px;
box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
Divi Mobile Menu Hamburger Icon
If you want to change some settings with the mobile menu hamburger icon, you can do so with CSS. Remember, the Menu module has a few settings like size and color, but the default menu has no settings for this.

/*edit the Divi mobile hamburger icon*/
.mobile_menu_bar:before {
YOUR CSS HERE
}
Custom Style Ideas
The following is a list of some ideas for things you might want to do to style the Divi menu hamburger icon. You can choose to do this by placing the snippets into the selector shown above.
color: #000000;
background: #ff0000;
font-size: 48px;
content: "63";
border: 2px solid #ff0000;
border-radius: 100px;
Change The Icon To An X When Opened
Check out this fun quick snippet: How To Change The Divi Hamburger Menu To An X When Opened
Divi Mobile Menu Dropdown
One of the first things you may want to adjust is the ugly blue thick like at the top of the mobile menu dropdown. Or maybe you want to remove some spacing around the outside, make it wider, change the background color, or adjust the shadow.

/*edit the Divi mobile menu dropdown*/
.et_mobile_menu {
YOUR CSS HERE
}
Custom Style Ideas
The following is a list of ideas of some things you might want to do to the Divi mobile menu dropdown. You can choose to do this by placing the snippets into the correct selector shown above.
border-top: 0px;
padding: 0px!important;
box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
width: 112%;
margin-left: -6%;
Collapse The Divi Mobile Menu Submenus
Check out this related tutorial: How To Collapse Divi Mobile Menu Submenus
Divi Mobile Menu Parent Links
Now we come to the menu item links. You can do a lot of adjustments here, like color, spacing, background, opacity, and even get rid of the tiny bottom border.

/*Divi mobile menu parent links*/
.et_mobile_menu li a {
YOUR CSS HERE
}
Custom Style Ideas
The following is a list of ideas of some things you might want to do to style the Divi mobile menu parent links. You can choose to do this by default, or on hover, by placing the snippets into the correct selector shown above.
padding: 10px 20px;
opacity: 1;
background: #ffffff;
font-size: 20px!important;
color: #2cba6c;
letter-spacing: 2px;
border-bottom: 2px solid #000000!important;
Divi Mobile Menu Submenu Child Links
Similar to the previous section, you can also adjust the submenu items. These appear by default with a small indent on the left. The styling suggestions here shoud probably be similar to the previous section about the parent links.

/*Divi mobile menu submenu links*/
.et_mobile_menu .menu-item-has-children li a {
YOUR CSS HERE
}
Custom Style Ideas
The following is a list of ideas of some things you might want to do to style the Divi mobile menu submenu links. You can choose to do this by default, or on hover, by placing the snippets into the correct selector shown above.
padding: 10px 20px;
opacity: 1;
background: #ffffff;
font-size: 20px!important;
color: #2cba6c;
letter-spacing: 2px;
border-bottom: 2px solid #000000!important;
Prefer To Use A Plugin?
If this is all a little too much code for you, I get it. You might want to check out a plugin my friend Peter at Divi Engine made called Divi Mobile.

The Divi Mobile plugin allows you to create custom looking, beautiful mobile menus for your Divi site without having to write any code.
You are the best! So easy to learning with you. Tnx
Thank Robi, so glad you enjoy my videos! 🙂
Love the post. I get so much out of your content. It’s so frustrating having the mobile menu size be determined by its column and not easily finding which selector to target. This post was exactly what I was looking for for my company website mobile menu. Wish ET would add the CSS targets to the query buttons. Would make CSS easier. Another menu to look at is the divicio[.]us Divi Mad Menu that just launched.
Hi Jacob, glad you like this and it is helpful! Thanks so much for the feedback! 🙂
Hey Nelson, thanks for sharing this! I just subscribed. Could you share how we can place a functional cart icon next to or above the hamburger icon in mobile?
Hi Ejay, glad to have you along! The cart icon shows when you have WooCommerce installed, so make sure you have that. Is there something beyond that you were referring to?
Thanks Nelson! I no longer google, I come straight to pee aye!
Do you know if it is possible to make columns with the menu child links?
Hi Lucia, that’s so cool to hear! I’m so glad you find our stuff helpful!
About the columns, I believe you mean having two menu items side by side on mobile, correct? You could try something like
.et_mobile_menu ul li a {
width: 50%;
float: left;
}
Great tutorial! You had one before that showed how to add icons to the menu with ET and Font Awesome icons. Do you have any code to make that work with the mobile menus?
Hi Jason,
Sure, you could target just the mobile menu if you want and use that in the code instead, like .et_mobile_menu ul li a
Yes, that does work. It works well with the Elegant Themes icons across all devices but it seems to have trouble with the Font Awesome icons on IOS mobile devices. In the mobile menu I just get a rectangle where the icon should be. Both work great on desktop though.
great tutorial you have here on your site!
Thank you very much, I hope you find it helpful!
Hi! Do you happen to have a guide for Divi menu not working on mobile? How to fix it?
Hi Erica,
What is not working? If there is some bug please reach out to Elegant Themes. I usually only make guides for common issues.