Elementor Horizontal Navigation With Optional Hover Image Change

Elementor Horizontal Navigation With Optional Hover Image Change

Element.How also offers premium tutorials! Check them here:

Table of Contents

In this tutorial, I will show you how to create an Elementor horizontal navigation menu with some custom CSS.

You will also learn how to create a version of this where hovering each menu item shows a different full screen image.

Here is the fancy version of the Elementor horizontal menu with image change on hover:

Please purchase access and be logged in to access this template.


Here is the normal version of the horizontal navigation menu:

Please purchase access and be logged in to access this template.


The idea for the fancy version comes from this website, which was shared in the Elementor facebook group.


  • Customizable: Adjust everything as you want it: the padding and colors of the menu items, the underline in the third level, etc.
  • Polyvalent: Works up to three level deep.
  • Desktop only: As hover is required, this is really a desktop only design. On mobile you will want an alternative.
  • WordPress Menu element: Elementor Pro is required as we are modding the "WordPress Menu" element.
  • No negative page load impact: Even though we are loading several large images, the page load isn't slowed: the large images start loading only after the rest of the page has completely loaded.

Let's get started!

First, import the template of your choice

This is a premium tutorial. Purchase access to unlock the full tutorial.

Access tutorial

$39/one time Purchase access


  • Gain Access to This TutorialUnlock complete access to the current tutorial: Elementor Horizontal Navigation With Optional Hover Image Change
  • Future UpdatesYou will get access to all future updates to this tutorial.
  • Enjoy Unlimited UsageUse on as many of your own sites or your clients sites as you wish.

    Note that reselling or redistributing is not permitted.

Access everything

$299/one time Purchase All Access


  • Unlock every premium tutorial on Element.howGet access to the entire library of premium tutorials on Element.how
    Preview premium tutorials
  • Get access to the CSS course for Elementor usersAccess the complete 14 HTML chapters, 30 CSS chapters and 7 Elementor Projects.Learn more
  • Simple CSS Grid For ElementorAn Elementor Addon to Create Awesome Grid Layouts in a Single Click for Containers, Galleries and Loop Grid. Learn more
  • free extra: ShapeDividers.com Premium AccessLifetime Premium Access to ShapeDividers.comVisit ShapeDividers.com
  • 30 day money backNo questions asked money back. Not what you expected? Get a refund.
  • One-time payment of only $299No hidden fees or subscriptions.

    Sales taxes added where applicable.
  • Great supportGet help when you need it. Support includes getting things working as intended.

    Support excludes customization work.
  • Lifetime access to everything Element.howThe price reflects what is currently available on Element.how. All future updates are included, but none are promised. You pay for what is available now, and the rest is a sweet extra.

    I will say that it is definitely my intention to keep adding tutorials to Element.how.
* All prices are USD. Applicable taxes will be charged at checkout. Have a question? See the FAQ or email me.

Element.how also provides premium tutorials showing awesome advanced designs, check them out here.

Looking for something else? Search across 2737 Elements right here:

Checkout the Elementor Addon Finder directly

7 Responses

  1. Hi Maxime,
    i just downloaded and installed the template. I cannot find the html element "Nav Images Code." to put inside the image urls.
    Can i create an html element for the images by my own? Do i have to use script type="text/javascript" ? I tried it, but it didn't work either.

    1. Greetings!

      I have two templates available on this page, it sounds like you imported the one for the normal layout, without the images on hover.

      Please import the other one, and let me know how it goes!


  2. Hi Maxime, just bought the template. Unfortunately the negative margin and fade-in-option for the background color does not work. Any workarounds? Thanks a lot and kind regards, yasemin

  3. ... I just realized, that the Scrolling Effect "transparency" in the Background does not work at all. Quite annoying. I spend so much time on google ... I used to love elementor, but it is actually fading

    1. Hey Yasemin!

      Sorry I have no clue what you mean here and how it's related to the tutorial... hehe.

      If it's an Elementor bug (i.e. if it still happens if you remove the custom code) then I suggest you reach out to their support please.

      Otherwise if it's related to the tutorial, please share your URL I will have a look. And let me know what to look for.


      1. Dear Maxime, thanks for your quick reply 🙂 I meant, that I would like this great menu to be transparent on page load. Is this possible?

      2. Greetings Yasemin!

        So follow these steps:

        1. Remove the background color that's on the DesktopHeader container.
        2. On that same container, add a negative bottom margin corresponding to the height of the header
        3. in the CSS (under WordPress Menu > Advanced > Custom CSS), change these lines:

        .admin-bar .navImagesWrapper {
            top: calc(var(--nav-height) + 32px);
        .navImagesWrapper {
            z-index: -3;
            position: fixed;
            top: var(--nav-height);
            left: 0;
            width: 100%;
            height: calc(100% - var(--nav-height));
            pointer-events: none;

        to this:

        .admin-bar .navImagesWrapper {
            top: 32px;
        .navImagesWrapper {
            z-index: -3;
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            pointer-events: none;

        Let me know how it goes!


Leave a Reply