Divi Tips 97: icons in the Divi menu

How to add icons to the Divi menu (without plugin)?

Updated on 25/09/21

1501 words

6 reading minutes
38 comments

This article contains affiliate links recognizable by the percentage icon (%) → I am an affiliate link

In this quick and easy tutorial, you will see how to add icons in the Divi menu. It's very simple and above all, it's within the reach of any beginner!

Icon Entete Defaut
Icons in the menu – Default header

No need to install a complex extension that will further burden your site! You will see that with a piece of CSS code the turn will be played!

1 – Why add icons to the Divi menu?

Well, because it's trendy of course! Or because an icon talks to everyone?

At first glance, the Internet user will know to which item of the menu to go. This can (maybe) improve the user experience?

Beyond these reasons, icons brighten up a web page, break monotony and dress your text. Besides, they're natives in Divi... so why don't they?

Do you know you can test Divi for free? See you on this page and click on "TRY IT FOR FREE"

2 - Add CSS class to menu items

First, you have to enable the addition of CSS Classes within your menu.

It's very simple. Go to tab Appearance > Menu and open them screen options (top, right). Check " CSS classes« .

Add Class Icon Menu
Enable Add CSS Class

This option allows a new field to appear within each menu item: the field CSS classes.

You will then use this field for assign a class to each menu item where you want to add an icon.

Add Class Css Icon
Add a class to each menu item

For my example, I used the Class " ld-menu-home But I could have used the Class " piempion It would have had no impact. So use this field to insert your Classes.

Note that you should not use accents, special characters or spaces. Assign a different class to each item if you want to display different icons.

Don't delay! Discover the theme Divi here !

3 – Insert icons in the Divi menu with CSS

Once you have assigned a Class to each item in the menu, you can add CSS to show the icons in the Divi menu.

If necessary, read this article that explains all ways to add custom code in Divi (including CSS).

Add Css Icone Menu
Add CSS to make appear icons in the Divi menu

Go to the tab Appearance > Customize > Additional CSS and copy the code (Snippet) following :

.ld-menu-home > a:before {
    font-family: 'ETMODULES';
    content: '\e009'; /* change icon code here */
    text-align: center;
    margin-right: 10px;
    margin-left: -10px;
    color: #4d2def; /* change icon color here */
    font-size: 1em; /* change icon size here */
    transition: all .3s ease;
}

Explanation:

  • The .ld-menu-home calls the class defined earlier in the menu items (chapter 2 of this article).
  • fat-family: ‘ETMODULES' indicates which font of icons to use. This font is native in Divi, just call it.
  • content: ‘e009'; indicates which icon is to be displayed.
  • color: #4d2ef; indicates the color of the icon (a site as HTML Color Code can help you find the perfect color).

If you want to insert a different icon for each menu item, you will then have to duplicate this code as much as you have d CSS class and icon code Every time.

Here is for example the CSS that I used for each item in my menu to display a different icon:

.ld-menu-home > a:before {
    font-family: 'ETMODULES';
    content: '\e009'; /* change icon code here */
    text-align: center;
    margin-right: 10px;
    margin-left: -10px;
    color: #4d2def; /*change icon color here */
    font-size: 1em; /*change icon size here */
    transition: all .3s ease;
}

.ld-menu-about > a:before {
    font-family: 'ETMODULES';
    content: '\7c';
    text-align: center;
    margin-right: 10px;
    margin-left: -10px;
    color: #4d2def;
    font-size: 1em;
    transition: all .3s ease;
}

.ld-menu-room > a:before {
    font-family: 'ETMODULES';
    content: '\e023';
    text-align: center;
    margin-right: 10px;
    margin-left: -10px;
    color: #4d2def;
    font-size: 1em;
    transition: all .3s ease;
}

.ld-menu-blog > a:before {
    font-family: 'ETMODULES';
    content: '\e104';
    text-align: center;
    margin-right: 10px;
    margin-left: -10px;
    color: #4d2def;
    font-size: 1em;
    transition: all .3s ease;
}

.ld-menu-contact > a:before {
    font-family: 'ETMODULES';
    content: '\e010';
    text-align: center;
    margin-right: 10px;
    margin-left: -10px;
    color: #4d2def;
    font-size: 1em;
    transition: all .3s ease;
}

.ld-menu-dispo > a:before {
    font-family: 'ETMODULES';
    content: '\5a';
    text-align: center;
    margin-right: 10px;
    margin-left: -10px;
    color: #4d2def;
    font-size: 1em;
    transition: all .3s ease;
}

.ld-menu-search > a:before {
    font-family: 'ETMODULES';
    content: '\55';
    text-align: center;
    margin-right: 10px;
    margin-left: -10px;
    color: #4d2def;
    font-size: 1em;
    transition: all .3s ease;
}

And here's the picture result:

Icon Entete Defaut
Icons in the menu – Default header

Need more resources on Divi? Visit ElegantThemes blog full of ideas and tutos! Or learn how to effectively use this theme through my training Divi !

4 - Choose icons made available by Divi

The icon codes to display, I didn't invent them! All you have to do is refer to the documentation, so go to the official Divi Icons page.

Icones Elegantthemes
Use the icons made available by Elegantthemes

In the icon bank, you will see that there is a code for each. For example, the Home icon code is . To use, you must remove the prefix &#x and the comma point (;). The icon code of the house is then e009.

Other examples:

  • The icon code Clock: 7d
  • The Cadenas icon code: 7e
  • The icon code Image: e005
  • The icon code Bulb: e007
  • etc.

Those are the codes that you will have to report in the CSS, at the line "content" for show icons in the Divi menu :

content: '\e009';

5 - Divi menu icons work for all header types

No matter what type of header you use on your site, the icons will display in your Divi menu : default header, centered header, SlideIn headerkeyhead–keyhead in the menu

Icon Entete Centree
To go further, I propose this related playlist:
Icon Entete Slidein
Header and Divi menu: all settings

Use

Icomoon in WordPress

6 – Icons in the Divi menu instead of text

, open the screen options and activate the option

If not already done.

Show an icon in the menu instead of text
Place your pages in the menu, as usual but instead of keeping the default navigation title, copy and paste the desired Divi icon code, as explained in Chapter 4 of this article. On the other hand, you keep the entire code: for example, the Home icon code is
  1. In the tab Appearance > MenuThen place a CSS class, for my example, I use CSS classld-icon-menu
  2. Renew as needed and save your changes.  or 
  3. Do not forget the CSS code to place the following code:.
  4. Here, when you save, your Divi menu displays icons instead of text! Great!
Show an icon in the menu instead of text - part 2
If you don't like Divi's native icons now, you can use custom icons that you import in your media library.
  1. Finally, go to the tab Appearance > Customize > Additional CSS In a previous article, you explained how
/*----Replace text menu with icons---- */
 
.ld-icon-menu a {
    font-family: 'ETmodules';
    font-size: 18px !important;
    color: #ffffff !important;
}
 
.ld-icon-menu a:hover {
    font-size: 16px !important;
	  transform: rotate(15deg);
}

insert images in Divi's mega menu

7 - Insert a custom icon instead of menu text

This is a variant...

Image in the menu instead of text Import your images into the media library and copy their URLs..

Then go to the Appearance > Menu tab. Open an existing menu item or place a new page in your menu. In the Navigation Title field, copy the following code:

Add a CSS Class to your menu item, for example:
Add a CSS Class to your menu item, for example:
  1. ld-icon-import
  2. . Save your menu.
<img src="url-de-votre-image" alt="votre-texte-alternatif" width="20%" />
  1. Ajoutez une Classe CSS à votre élément de menu, par exemple : ld-icon-import. Sauvegardez votre menu.
Icon in the Divi menu
Do not forget CSS to improve the display
  1. Finally, go to the tab Appearance > Customize > Additional CSS In a previous article, you explained how
/*----Align imag with text menu---- */

.ld-icon-import img {
    vertical-align: text-bottom !important;
}

This code improves the image display but it is optional or depends on the image type you use. It is possible to adapt it to your needs.

There... Enjoy!

Did you know that? You can test Divi for free by visiting on this page and by clicking on "TRY IT FOR FREE"

Icone Menu Divi Pinterest
Add Icones Menu Divi

Divi training via CPF

Get Divi

Divi training

Ebook Divi PDF

Free tips

Divi Quiz

Live coaching

icon 256x256

Proudly translated by wpLingua, the translation extension for WordPress That I develop! SEO-Friendly / Automatic / Editable

Your comments...

38 Commentaires

  1. Marcelo

    Thank you for the tips. I’m having an issue, the codes appear wrong. For example, I enter ‘\ 69’ and, instead of the double document, play appears, which is the code ‘\ 49’. Any suggestion?

  2. Lycia Diaz

    Hello Marcelo,
    I don’t see where could be this issue…

  3. AnaĂŻsM

    Bonjour Lycia,
    Merci pour ce tuto bien utile. Une question cependant:
    – En ce qui me concerne je souhaite remplacer le mot « home » par la maison… Comment puis-je faire cela? Lorsque je laisse le champ vide ça ne fonction pas.
    – Comment changer la couleur selon les Ă©tats « active », survol etc? J’ai essayĂ© mais je ne dois pas appeler les bons Ă©lĂ©ments puisque ca ne fonctionne pas!
    Merci pour votre aide!

  4. Lycia Diaz

    Salut AnaĂŻs, pour le mot « home » ne s’agit-il pas simplement du nom que tu as donnĂ© Ă  ta page ? Dans ce cas, c’est facile Ă  modifier. Pour changer les Ă©tats « active » et « survol » :
    – « Active » : c’est une option disponible dans Apparence > Personnaliser > En-tĂȘte et navigation > Barre primaire > Couleur du lien actif
    – « Survol » : c’est du CSS pur.

  5. Pat

    Salut, super tuto comme toujours.
    Mais si on veut n’avoir que l’icĂŽne, sans le texte ?
    J’ai essayĂ© de bricoler le CSS mais ça marche pas… si quelqu’un a une idĂ©e je prends !
    Merci !

  6. ADELINE SCHINELLA

    Merci Pat de poser cette question ! je me demande la mĂȘme chose !

    Comment rajouter une ßcone seule ? : Par exemple, je voudrais rajouter une icÎne « bonhomme » pour la création de compte (mais sans le texte « compte »)

  7. Lycia Diaz

    Salut Adline et Pat ! VoilĂ , j’ai mis l’article Ă  jour pour rĂ©pondre Ă  votre question : chapitre 6 et 7.

  8. Karine

    Bonjour et merci pour ce tuto, cependant je souhaite Ă©galement utiliser uniquement l’icone « home » () mais j’ai un carrĂ© blanc qui s’affiche Ă  cĂŽtĂ© de mon icĂŽne dans mon mon menu si je mets le le code de l’icĂŽne Divi dans le titre de la navigation.

  9. Lycia Diaz

    Salut Karine, tu as bien suivi le tuto ? Si tu mets le bon code comme indiqué, ça doit marcher.

  10. Karine

    Merci beaucoup pour ta rĂ©ponse. J’ai en effet bien suivi le tuto avec le code -&#xe074- qui correspond Ă  l’icĂŽne « home » de Divi. Et j’ai exactement le mĂȘme carrĂ© que celui qui s’est affichĂ© dans mon commentaire prĂ©cĂ©dant.

    En alternative, pour ne pas avoir ce carrĂ©, j’ai remplacĂ© le titre de mon menu par un point (.) mais ce point Ă  cĂŽtĂ© de l’icĂŽne n’est pas trĂšs propre dans ma barre de navigation.
    url du site : https://ligue-de-squash-pdl.karine-design.fr/

  11. Lycia Diaz

    Hello Karine, si tu lis bien mon article : le code -&#xe074- doit se placer sans texte, sinon tu veux le texte à cÎté, tu dois utiliser seulement le code -e074-
    Là ça devrait marcher.

  12. Karine

    Bonsoir Lycia, oui c’est bien ce que j’ai fait Ă  la base, j’ai juste mis le code sans aucun autre texte. Mais ça me met un carrĂ© Ă  cĂŽtĂ© de l’icĂŽne (le mĂȘme carrĂ© que dans mon tout premier post ) . C’est pour cette raison que j’ai mis un point pour ĂȘtre une alternative plus discrĂšte que le carrĂ©.

  13. Lycia Diaz

    Karine, le tuto as Ă©tĂ© mis Ă  jour la semaine derniĂšre. Si tu veux juste l’icĂŽne sans texte, la solution est dans le chapitre 6 du tuto. Si tu veux l’icĂŽne + le texte, tu dois supprimer le prĂ©fixe &#x
    C’est peut-ĂȘtre un espace qui traine et qui empĂȘche le code de fonctionner ?
    Reviens nous dire quand tu auras trouvĂ© 😉

  14. Lesley

    Thanks so much for this, great tutorial. Used it to add a lock to my client login link.

  15. Lycia Diaz

    Great ! 😉

  16. Pat

    Meric Lycia pour la mise Ă  jour !!! Bravo.

  17. Camille

    Bonjour Lycia,

    Merci pour ce tuto, je suis en train de crĂ©er mon site avec Divi et tes formations ainsi que ces astuces m’aident bien !

    J’ai cependant une question, dont je ne trouve la rĂ©ponse nulle part.
    J’ai bien modifiĂ© le texte d’une de mes pages du menu (la page compte) par une icone. Cependant, lorsque l’on passe en menu mobile (avec le hamburger), la page « compte » passe dans le hamburger. J’aimerais que cette page reste prĂ©sente visible (comme c’est le cas pour les icones de panier et de recherche) au lieu qu’elle passe dans le menu hamburger, mais je ne sais pas comment faire en CSS…
    Aurais-tu une petite idée ?

    Merci !

  18. Lycia Diaz

    Salut Camille, non ce n’est pas possible. Le CSS ne suffirait pas, il faudrait le coder en PHP, trop compliquĂ© pour moi je pense.

  19. Maxime Bardou

    Bonjour Lycia,

    Merci beaucoup pour ce tuto et merci de prendre le temps de rĂ©pondre aux questions, c’est du travail !

  20. Lycia Diaz

    Merci Maxime ! Oui c’est du travail, merci de le reconnaütre 😉

  21. Youssef

    Bonjour Lycia,

    comme d’habitude superbe article trĂšs dĂ©taillĂ©s.

    Je voudrai intĂ©grer mes icones que j’ai crĂ©Ă© avec Inkscape au format png ou svg et difficile de trouver un tuto sur le web pour ce point en particulier

    Une idée svp ?

  22. Saurel

    Bonjour,

    J’ai rencontrĂ© un problĂšme sur mon menu, les icones s’affichent correctement sur mozilla, mais sur les autres navigateurs, il n’y a pas de problĂšme, pourtant j’ai essayĂ© de changer d’icone et cela marche correctement,

    d’oĂč peut venir le problĂšme

  23. Lycia Diaz

    J’en ai aucune idĂ©e. Peut-ĂȘtre le cache ?

  24. Sarah

    Bonjour !

    J’ai un problĂšme d’envergure : il se trouve que lorsque je suis sur « personnaliser » afin de modifier les codes, les icons apparaissent correctement et tout fonctionne. Mais lorsque je me rend directement sur mon blog, aucun icon ne correspond (sauf un, ce qui est bien Ă©trange). J’ai d’ailleurs remarquĂ© que les icons de votre menu ne fonctionnaient pas non plus, peut-ĂȘtre est-ce un problĂšme de navigateur ou autre ?

  25. Lycia Diaz

    Va Ă  l’onglet Divi > Option du thĂšme > CrĂ©ateur et dĂ©sactive la gĂ©nĂ©ration de fichiers statiques

  26. Bertrand

    Bonjour Lycia.

    Merci pour le coup de pouce ! J’ai une question toutefois. J’ai mis une icone dans le menu (sans texte). Cependant, j’avais un petit carrĂ© Ă  la place de mon icĂŽne. J’ai dĂ» faire comme si j’avais du texte et mis une balise Ă  la place. Bref, ça fonctionne pour l’ordinateur mais en revanche en version mobile dans mon menu dĂ©roulant les icĂŽnes sont bien prĂ©sentes (je peux cliquer dessus), mais impossible de les voir, elles n’apparaissent pas. J’ai essayer de changer la couleur (elles sont en blanc sur le site), mais rien Ă  faire, elles n’apparaissent pas dans mon menu dĂ©roulant…
    T’a-t-il un bout de CSS Ă  entrer pour le mobile ?? Merci.

  27. Lycia Diaz

    Je pense que c’est Ă  cause du cache de Divi. Il faut le dĂ©sactiver Ă  Divi > Options du thĂšme > CrĂ©ateur > AvancĂ© et dĂ©sactiver l’option « gĂ©nĂ©ration de fichier CSS statistiques »

  28. stephanie

    Bonjour Lycia,

    Merci pour ce super tuto! j’ai un petit problĂšme avec les icons, lorsque je suis sur la page personnalisĂ©e, mes icons apparaissent bien. J’ai mis 2 icones dans mon menu une pour ma page contact et une pour ma page login. lorsque je navigue sur mon site, les icones disparaissent en fonction des pages de mon menu. par exemple si je vais sur ma page d’accueil, les icones disparraissent du menu mais sur la page « a propos », les icones sont bien prĂ©sentes. J’ai essayĂ© de dĂ©sactiver l’option « gĂ©nĂ©ration de fichier CSS statistiques », cela n’a rien changĂ©. une idĂ©e? Merci beaucoup!

  29. Lycia Diaz

    Ah c’est bizarre car justement j’allais te dire de dĂ©sactiver la gĂ©nĂ©ration de CSS. Peut-ĂȘtre as-tu un plugin de cache ?

  30. Lycia Diaz

    Utilises plutĂŽt le thĂšme builder et ajoute des modules images avec un lien dessus, c’est bien plus simple que de tout recoder

  31. stephanie

    Merci Lycia pour ta rĂ©ponse. En faite j’ai dĂ©sactivĂ© l’option « dynamic icons » et ça a marchĂ©!

  32. Stephane

    Bonjour Lycia,

    petite question complĂ©mentaire pour laquelle je ne trouve de rĂ©ponse nulle part sur la toile, y’a t’il un moyen simple d’intervertir l’icone du panier et de recherche, a savoir mettre le panier apres le bouton search ?
    merci de tes Ă©claircissements !! a bientĂŽt

  33. Lycia Diaz

    Bonne question. Ce doit ĂȘtre faisable en codant je suppose. Je n’ai pas de solution Ă  te proposer par l’instant

  34. Raffi

    Hello !
    Merci pour le tuto ! ça marche nickel.

    => une astuce pour passer le picto Ă  droite (plutĂŽt qu’Ă  gauche du texte du menu) ?

  35. Lycia Diaz

    Hum bonne question


  36. Raffi

    C’est bon j’ai trouvĂ© comment faire passer le picto de gauche Ă  droite de l’intitulĂ© du menu.
    (dans mon cas c’est le menu secondaire, donc pour ceux qui en aurait besoin pour le menu primaire il faudra remplacer #et-secondary-menu par la bonne class (que je connais pas de mĂ©moire et je prĂ©fĂšre ne pas laisser d’indications hasardeuses)

    #et-secondary-menu li >a:before {
    position:absolute;
    right: -15px;
    }
    #et-secondary-menu li {
    padding-right: 25px;
    }

  37. Anne

    Bonjour, quel code CSS peut-on ajouter pour que l’icĂŽne soit de taille raisonnable en affichages tablette et mobile ?

    Merci !

  38. Lycia Diaz

    Ah mince, bonne question. C’est un peu compliquĂ© car il faut inspecter le code puis l’Ă©crire avec des Medias Queries. Je ne peux pas vraiment te rĂ©pondre lĂ  comme ça…

Submit a comment

Your email address will not be published. Required fields are indicated with *