Maison interface Web tutoriel CSS Comment créer un menu de navigation complexe à l'aide de la mise en page CSS Flex

Comment créer un menu de navigation complexe à l'aide de la mise en page CSS Flex

Sep 26, 2023 am 11:21 AM
导航菜单 弹性布局 css flex

如何使用Css Flex 弹性布局创建复杂的导航菜单

Comment utiliser la mise en page élastique CSS Flex pour créer un menu de navigation complexe

Dans la conception Web, le menu de navigation est l'un des composants très importants. Il ne s’agit pas d’une simple liste de liens, elle doit être lisible et facile à utiliser. Cet article explique comment utiliser la disposition élastique CSS Flex pour créer des menus de navigation complexes et fournit des exemples de code spécifiques.

CSS Flex est une méthode permettant de créer des mises en page Web adaptatives. Il est basé sur un axe principal et un axe transversal et utilise des conteneurs flexibles et des éléments flexibles pour obtenir des effets de disposition flexibles. Dans une mise en page flexible, nous pouvons spécifier de manière flexible la largeur, la hauteur, l'espacement et l'alignement des éléments, ce qui facilite la création de diverses mises en page complexes.

Créer un menu de navigation de base

Tout d'abord, nous devons créer un menu de navigation de base. En HTML, nous pouvons utiliser des listes non ordonnées (ul) et des éléments de liste (li) pour créer la structure des menus de navigation. Voici un exemple de la structure HTML d'un menu de navigation de base :

1

2

3

4

5

6

7

8

9

<nav>

  <ul class="menu">

    <li><a href="#">首页</a></li>

    <li><a href="#">产品</a></li>

    <li><a href="#">服务</a></li>

    <li><a href="#">关于我们</a></li>

    <li><a href="#">联系我们</a></li>

  </ul>

</nav>

Copier après la connexion

Ensuite, nous devons utiliser CSS Flex pour mettre en page le menu de navigation. Nous pouvons utiliser le code CSS suivant pour définir le conteneur du menu de navigation comme conteneur flexible, définir les éléments de la liste comme éléments flexibles et spécifier l'alignement de l'axe principal et de l'axe transversal :

1

2

3

4

5

.menu {

  display: flex;

  justify-content: space-between;

  align-items: center;

}

Copier après la connexion

Dans le code ci-dessus, nous avons utilisé l'attribut display pour modifier le .menu L'élément est défini sur flex, ce qui en fait un conteneur flex. Ensuite, nous utilisons l'attribut justifier-content pour définir l'alignement sur l'axe principal sur l'espace entre les deux, afin que les éléments du menu de navigation puissent être répartis uniformément sur l'axe principal. Enfin, nous utilisons la propriété align-items pour définir l'alignement sur l'axe transversal au centre, ce qui centre verticalement les éléments du menu de navigation.

Implémenter une disposition complexe du menu de navigation

Pour implémenter une disposition complexe du menu de navigation, nous pouvons ajouter des styles et des dispositions supplémentaires basés sur la disposition de base. Voici un exemple qui montre comment créer un menu de navigation avec des sous-menus :

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

<nav>

  <ul class="menu">

    <li><a href="#">首页</a></li>

    <li>

      <a href="#">产品</a>

      <ul class="submenu">

        <li><a href="#">产品1</a></li>

        <li><a href="#">产品2</a></li>

        <li><a href="#">产品3</a></li>

      </ul>

    </li>

    <li><a href="#">服务</a></li>

    <li><a href="#">关于我们</a></li>

    <li><a href="#">联系我们</a></li>

  </ul>

</nav>

Copier après la connexion

Dans le code ci-dessus, nous avons ajouté une liste non ordonnée imbriquée au deuxième élément de liste utilisé pour créer le sous-menu. Nous devons également ajouter certains styles au sous-menu, comme définir la propriété display sur none pour masquer le sous-menu par défaut. Voici le code CSS correspondant :

1

2

3

4

5

6

7

8

9

10

11

12

13

14

.menu {

  display: flex;

  justify-content: space-between;

  align-items: center;

}

 

.submenu {

  display: none;

  position: absolute;

}

 

.menu li:hover .submenu {

  display: block;

}

Copier après la connexion

Dans le code ci-dessus, nous utilisons l'attribut position pour définir le sous-menu sur un positionnement absolu, et l'attribut display pour masquer le sous-menu par défaut. Nous utilisons ensuite le sélecteur de pseudo-classe :hover pour définir la propriété d'affichage du sous-menu sur block afin d'afficher le sous-menu au survol de la souris.

Voici comment créer un menu de navigation complexe à l'aide de la mise en page CSS Flex. En utilisant de manière flexible des conteneurs flexibles et des éléments flexibles, nous pouvons facilement mettre en œuvre diverses dispositions de menus de navigation complexes. J'espère que cet article pourra vous être utile dans votre travail de conception de sites Web !

Résumé

Cet article explique comment utiliser la mise en page CSS Flex pour créer des menus de navigation complexes. Sur la base de la mise en page de base, nous avons implémenté un menu de navigation avec des sous-menus en ajoutant des styles et des mises en page supplémentaires. En utilisant de manière flexible CSS Flex pour disposer les conteneurs et les éléments du menu de navigation, nous pouvons facilement implémenter diverses dispositions de menu de navigation complexes. J'espère que cet article pourra vous aider à améliorer vos compétences et capacités en matière de conception de sites Web !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Tags d'article chaud

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment obtenir un effet de défilement horizontal grâce à la mise en page CSS Flex Comment obtenir un effet de défilement horizontal grâce à la mise en page CSS Flex Sep 27, 2023 pm 02:05 PM

Comment obtenir un effet de défilement horizontal grâce à la mise en page CSS Flex

Comment utiliser la mise en page CSS Flex pour implémenter un design réactif Comment utiliser la mise en page CSS Flex pour implémenter un design réactif Sep 26, 2023 am 08:07 AM

Comment utiliser la mise en page CSS Flex pour implémenter un design réactif

Comment implémenter une mise en page à deux colonnes via la mise en page CSS Flex Comment implémenter une mise en page à deux colonnes via la mise en page CSS Flex Sep 26, 2023 am 10:54 AM

Comment implémenter une mise en page à deux colonnes via la mise en page CSS Flex

Explication détaillée des méthodes de traitement de l'espacement et des espaces blancs dans la mise en page flexible CSS Flex Explication détaillée des méthodes de traitement de l'espacement et des espaces blancs dans la mise en page flexible CSS Flex Sep 26, 2023 pm 08:22 PM

Explication détaillée des méthodes de traitement de l'espacement et des espaces blancs dans la mise en page flexible CSS Flex

Explication détaillée du positionnement absolu et des effets en cascade dans la mise en page flexible CSS Flex Explication détaillée du positionnement absolu et des effets en cascade dans la mise en page flexible CSS Flex Sep 27, 2023 pm 01:58 PM

Explication détaillée du positionnement absolu et des effets en cascade dans la mise en page flexible CSS Flex

Comment implémenter une disposition de grille irrégulière via la disposition CSS Flex Comment implémenter une disposition de grille irrégulière via la disposition CSS Flex Sep 28, 2023 pm 09:49 PM

Comment implémenter une disposition de grille irrégulière via la disposition CSS Flex

Un guide des propriétés de mise en page flexibles CSS : position sticky et flexbox Un guide des propriétés de mise en page flexibles CSS : position sticky et flexbox Oct 27, 2023 am 10:06 AM

Un guide des propriétés de mise en page flexibles CSS : position sticky et flexbox

Comment centrer un div en HTML Comment centrer un div en HTML Apr 05, 2024 am 09:00 AM

Comment centrer un div en HTML

See all articles