Matériel d'apprentissage Design Lite Navigation

La navigation est une interface utilisateur indispensable sur n'importe quel site Web. Indépendamment de l'échelle, d'une page à l'autre ou de l'e-commerce à part entière, un site Web a besoin d'une navigation pour permettre aux utilisateurs de parcourir les pages et les sections. Après notre précédent tutoriel sur la grille Material Design Lite, nous allons voir dans cette suite comment utiliser un autre composant MDL: le module de navigation..

Avant de commencer, n'oubliez pas d'inclure les bibliothèques MDL. les feuilles de style et le JavaScript dans le tête de votre page:

   

Maintenant, nous pouvons commencer à construire la navigation.

Navigation de base

La navigation dans MDL est un sous-composant de Mise en forme, avec les autres comme la grille, les onglets et le pied de page. La forme de base de la navigation dans MDL comprend le nom du site, quelques menus de liens et une navigation hors-toile..

Pour en créer un, ajoutez un vide div avec mdl-layout et mdl-js-layout attaché. Ces deux classes sont obligatoires. le mdl-layout La classe applique des styles prédéfinis qui garantissent la présentation correcte du composant d'interface utilisateur, principalement de la navigation. Pendant ce temps, le mdl-js-layout ajoutera un comportement dynamique via JavaScript qui inclut l'ajout de nouveaux éléments et quelques classes supplémentaires pour rendre la fonction de navigation.

Dans cette div, créer un entête élément avec le mdl-layout__header classe attachée.

Ensuite, créez un nouveau div avec mdl-layout__header-row. C'est l'élément où nous allons réellement mettre la navigation en place.

Enveloppez le nom du site en utilisant un envergure élément avec mdl-layout-title classe attachée, puis une balise d'ancrage avec une URL pointant vers la page d'accueil. Vous pouvez également remplacer le texte par une image du logo de votre site..

Acmé

Créer un div sous le nom du site avec mdl-layout-spacer classe attachée. Ce div va ajouter un espace entre le nom du site, et éventuellement pousser la navigation à droite sur l'en-tête.

Acmé

Maintenant, nous ajoutons les menus de navigation sous la spacer en utilisant le nav élément.

Acmé

Enfin, ajoutez un nouveau div avec le mdl-layout__drawer en dehors de entête élément pour construire la navigation hors-toile.

Acmé
Acmé

Au fur et à mesure que vous rechargez la page, la navigation sur la toile doit immédiatement fonctionner. vous devriez trouver l'icône «hamburger» pour l'activer ou la désactiver. Essayez:

Cependant, comme vous pouvez le voir ci-dessus, la barre de navigation ainsi que le nom du site et le menu de navigation sont masqués. MDL les cache volontairement lorsqu’ils sont affichés dans des fenêtres de la taille d’une tablette. C'est en fait une décision réfléchie de l'équipe MDL. Le menu horizontal est mal adapté en termes de mise à l'échelle horizontale, en particulier si vous avez des dizaines de menus. À un moment donné, il ne rentrera pas dans une fenêtre d'affichage étroite et s'effondrera ou chevauchera probablement l'autre interface utilisateur dans la navigation..

Néanmoins, si nous souhaitons conserver sa visibilité dans une fenêtre plus petite, ajoutez la mdl-layout - en-tête fixe en ligne avec le mdl-layout classe.

… Plus de contenu ici…

Cette classe forcera la navigation à être visible sur les téléphones et les tablettes.

Ajout d'un formulaire de recherche

Les formulaires de recherche constituent un élément complémentaire commun à la navigation sur les sites Web. Ils peuvent être très utiles pour les utilisateurs qui ne savent pas toujours quel menu utiliser pour trouver le contenu recherché. Avec le formulaire de recherche, ils peuvent simplement taper et rechercher.

Trouvez le code HTML complet pour construire le formulaire de recherche sous le nav élément

… Plus de contenu ici…
… Plus de contenu ici…

Nous avons défini ici deux composants MDL différents, à savoir le champ de texte et le bouton. Le bouton apparaît comme une icône de recherche qui élargira le champ de saisie de la recherche lorsque vous cliquerez dessus:

Pensée finale

La navigation dans MDL est une composante extrêmement lourde compte tenu du nombre de variations que nous pouvons organiser pour différents scénarios. Dans ce tutoriel, nous avons simplement construit une navigation de base en utilisant les classes essentielles.

La navigation peut être étendue avec des classes d’utilitaires ou en ajoutant d’autres composants à partir de MDL. Par exemple, nous pouvons rendre le fond de navigation transparent et utiliser une image d’arrière-plan, définir la navigation hors-toile sur toujours visible, rendre la navigation non collant, et même remplacer les menus de liens avec des onglets qui peuvent être utiles pour un site Web à une seule page.

La composante de navigation, cependant, est plutôt opinionée.

Les styles de navigation inspectés via Chrome DevTools

Le remplissage à gauche de la navigation qui est défini sur 72px, par exemple, suggère qu'une navigation devrait avoir une navigation hors toile avec l'icône "hamburger". Parfois, nous n’avons peut-être besoin que d’une navigation décente avec des fonctionnalités de base. Pourtant, la navigation est un composant solide. J'attends des améliorations et peut-être des fonctionnalités supplémentaires.

Dans le prochain didacticiel, nous examinerons deux composants que nous avons déjà brièvement examinés: les boutons et les champs de texte. Jusqu'à la prochaine fois!