< Elementor Codes >

Easy Elementor Mega Menu! Free! No Plug-Ins required!

Desktop users testing the mobile version: refresh your browser after resizing the window.

Important : I created a new tutorial, that is a lot more simple, and much better for accessibility. I recommend you use the  instructions found there instead.


The tutorial here is still a decent option if you want a responsive mega menu, as my other tutorial is for desktop only. However, for a serious website, you should go the Ubermenu, if what you are looking for is a responsive mega menu. It is accessible, and SEO friendly.

 
It is the only reputable mega menu I found that was accessible and allowed for great designs. It also has really good reviews.

Unfortunately, you can’t create the sub menu elements using Elementor templates. However, until the addons make their mega menu plugins accessible, it is definitely the optimal option.

Important : I recommend using this technique for websites where SEO is not really important. The way the html ends up being setup is not ideal for SEO or for accessibility. 

Recommended for smaller projects, or personal websites.

If you need a proper mega menu for your e-commerce website, or other serious project where SEO and accessibility is important, I suggest either:

 

Both have great mega menu elements for direct Elementor integration.

Back to the tutorial: Elementor Free Compatible

This Elementor responsive mega menu tutorial uses the default ‘tabs’ element that comes with Elementor Free. Also used are templates from Elementor Pro, but they could be changed to Anywhere Elementor templates.

Easily Create a Responsive Elementor Mega Menu for FREE
Play Video

A few improvements were made after the video was recorded, in regards to the columns settings. Read that part carefully.

To begin with, create the section that will house the menu

Give it these settings

Easily Create a Responsive Elementor Mega Menu for FREE

Give it a z-index value of ' 999 ' and the CSS ID ' sectionmen '

Easily Create a Responsive Elementor Mega Menu for FREE

Make the section sticky (if you want)

Elementor Sticky Header Changes Logo Size and Position

Then, create three columns in that section. Insert logo, hamburger menu (for mobile), and tabs element in each column respectively.

Easily Create a Responsive Elementor Mega Menu for FREE

For the animated hamburger icons, download them here.

See this article for the examples to choose your preferred icon. Insert all the HTML from your preferred icon in an HTML element in the middle column.

Now, adjust the settings for the columns

Easily Create a Responsive Elementor Mega Menu for FREE
Logo column
Easily Create a Responsive Elementor Mega Menu for FREE
Hamburger Icon Column

The column with the tabs element will adjust automatically to the remaining space.

Adjust for tablet view (logo column 89%, icon 11%, tab element 100%)

And for mobile devices also

Easily Create a Responsive Elementor Mega Menu for FREE
logo is 79% , icon 21%

Display the HTML element that has the hamburger icon code only on mobile

Easily Create a Responsive Elementor Mega Menu for FREE

Modify its code a little bit by adding this

<script> 
/* Please login to get the code 
 * The code will be for the Easily Create a Responsive Elementor Mega Menu for FREE tutorial 
 * Found at this URL https://element.how/elementor-mega-menu-free-no-plugins/ 
 */ 
</script>
Easily Create a Responsive Elementor Mega Menu for FREE

Finally, build your Elementor mega menu!

You will need to write the title each tab like this

Change the URL and text to your own.

<script> 
/* Please login to get the code 
 * The code will be for the Easily Create a Responsive Elementor Mega Menu for FREE tutorial 
 * Found at this URL https://element.how/elementor-mega-menu-free-no-plugins/ 
 */ 
</script>
Easily Create a Responsive Elementor Mega Menu for FREE

For the content, simply insert the template shortcode, as seen above

You will also need to create an empty first tab item. This is necessary for the code to work properly with this default tab element.

Easily Create a Responsive Elementor Mega Menu for FREE
'Home' here does not show up in the front end, as you can see in the example above.

For optimal results, your templates should be fully responsive and display great on all viewports. They also need to have a background color.

Finally, add all of this code in an html Element towards the bottom of the page (or header template)

<script> 
/* Please login to get the code 
 * The code will be for the Easily Create a Responsive Elementor Mega Menu for FREE tutorial 
 * Found at this URL https://element.how/elementor-mega-menu-free-no-plugins/ 
 */ 
</script>

 

 

@media (min-width: 1025px){
nav.elementor-tabs .elementor-tab-desktop-title {
display: inline-table!important;
}
nav > div.elementor-tabs-wrapper {
text-align: right;
display:block!important;
}
}

Et voila! Thanks for reading!
Let me know if you need help!

12 Responses

  1. Thank you for the lesson, I have built a very simple menu without the shortcodes and that is all I needed however I do need to say that the text below my tabs is jumping up and down and I cannot change that... any suggestions?

  2. Hi i am struggeling to get the elementor short codes. How do i get them in the new wp? Does it all work with standard elementor or only with anywhere elementor?

    1. yes, it works with standard Elementor... just go to the templates section, and create a new template... if you have the free version, use anywhere elementor instead

  3. This is great and is exactly what I needed today! But there's one thing, the mega-menu doesn't always close when we move the mouse away (not active) do you have an idea what might be causing this issue? Thanks!

    1. Thanks! Also, just to let readers know that Capucine was missing a bit of code from my code above... after she added it it fixed this problem!

    1. hello Rikkelie! add this CSS to make it align to the right

      nav.elementor-tabs .elementor-tab-desktop-title {
      display: inline-table!important;
      }

      .elementor-widget-tabs .elementor-tabs {
      text-align: right;
      }

    2. Rikkelie Cecilia Sommer Holm Yea I could see it from the DOM the mobile view was turned off... it had the CSS class elementor-hidden-mobile , which is what elementor adds when we toggle that 'hide on mobile' switch.

Leave a Reply