Barre de recherche
La barre de recherche est un système de navigation permettant à l'usager d’accéder rapidement à un contenu en lançant une recherche sur un mot clé ou une phrase.
HTML
Structure du composant
Le composant Barre de recherche est un système de navigation qui permet à l'utilisateur d’accéder rapidement à un contenu en lançant une recherche sur un mot clé ou une expression. Sa structure est la suivante :
-
Le conteneur de la barre de recherche doit être un élément HTML
<div>
avec le rôlesearch
défini par la classefr-search-bar
. -
Le champ de recherche est un élément HTML
<input>
de typesearch
défini par la classefr-input
. -
Le champ de recherche doit être associée à un libellé
<label>
avec la classefr-label
. -
Le bouton de recherche est un élément HTML
<button>
de typebutton
défini par la classefr-btn
et dispose d'un attributtitle
indiquant son action. -
Un message d'erreur ou de succès peut être associé au champ de
recherche en utilisant un élément HTML
<div>
avec la classefr-messages-group
dans lequel on peut ajouter un messagefr-message
.-
Son attribut
id
doit être associé à l'attributaria-describedby
du champ de recherche. -
Ce bloc peut être placé vide et être rempli dynamiquement,
auquel cas il doit être annoncé à l'utilisateur en utilisant
l'attribut
aria-live="polite"
.
-
Son attribut
Exemple de structure HTML
<div class="fr-search-bar" role="search">
<label class="fr-label" for="search-input">
Rechercher
</label>
<input class="fr-input" aria-describedby="search-input-messages" placeholder="Rechercher" id="search-input" type="search">
<div class="fr-messages-group" id="search-input-messages" aria-live="polite">
</div>
<button title="Rechercher" type="button" class="fr-btn">Rechercher</button>
</div>
CSS
Installation du CSS
Pour fonctionner correctement le style CSS du composant et de ses
dépendances doivent être importés. L'import doit se faire avant le
contenu de la page dans la partie
<head>
, et de
préférence avec les fichiers minifiés, car plus légers.
Il est possible d'importer les fichiers CSS avec un niveau de granularité adapté à vos besoins. Voir le découpage des fichiers CSS du DSFR dans la documentation dédiée .
Dépendance | Obligatoire |
---|---|
Core | Oui |
Input | Oui |
Button | Oui |
Search | Oui |
Exemple d'imports CSS
<link href="dist/core/core.min.css" rel="stylesheet">
<link href="dist/component/input/input.min.css" rel="stylesheet">
<link href="dist/component/button/button.min.css" rel="stylesheet">
<link href="dist/component/search/search.min.css" rel="stylesheet">
Variante de taille
La barre de recherche est disponible en deux variantes de tailles
pour s'adapter à différents contextes d'utilisation. Pour
appliquer une variante de taille, ajoutez une des classes
suivantes à l'élément
<div class="fr-search-bar">
:
- En taille MD : par défaut.
-
En taille LG : définie par la classe
fr-search-bar--lg
.
Exemple de variante de taille
<div class="fr-search-bar fr-search-bar--lg" role="search">
<!-- Contenu de la barre de recherche -->
</div>
JavaScript
Le composant Barre de recherche ne nécessite pas l'utilisation de JavaScript pour son fonctionnement de base.
Note de version
Voir les évolutions sur github
Contenu associé
En-tête
Présentation du composant En-tête utilisé pour identifier le site consulté et donner accès à des fonctionnalités clés comme la recherche ou la connexion.
