<base> : l'élément pour l'URL de base du document
Baseline
Widely available
*
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2015.
* Certaines parties de cette fonctionnalité peuvent bénéficier de prise en charge variables.
L'élément HTML <base> définit l'URL de base à utiliser pour toutes les URL relatives d'un document. Il ne peut y avoir qu'un seul élément <base> dans un document.
L'URL de base utilisée par un document peut être obtenue par les scripts avec Node.baseURI. Si le document ne contient aucun élément <base>, alors baseURI prend la valeur de location.href.
Attributs
Cet élément inclut les attributs universels.
Attention :
Un élément <base> doit avoir un attribut href, un attribut target ou les deux.
Si au moins un de ces attributs est spécifié, l'élément <base> doit précéder les autres éléments dont les valeurs d'attribut sont des URL, comme l'attribut href d'un élément <link>.
href-
L'URL de base à utiliser dans tout le document pour les URL relatives. Les URL absolues et relatives sont autorisées. Les URL
data:etjavascript:ne sont pas autorisées. target-
Un mot-clé ou un nom défini par l'auteur du contexte de navigation par défaut pour afficher les résultats de la navigation à partir des éléments
<a>,<area>ou<form>sans attributtargetexplicite. Les mots-clés suivants ont des significations particulières :_self(par défaut) : Affiche le résultat dans le contexte de navigation courant._blank: Affiche le résultat dans un nouveau contexte de navigation sans nom._parent: Affiche le résultat dans le contexte de navigation parent du contexte courant, si la page courante est dans un cadre. S'il n'y a pas de parent, agit comme_self._top: Affiche le résultat dans le contexte de navigation le plus haut (le contexte de navigation qui est un ancêtre du contexte courant et qui n'a pas de parent). S'il n'y a pas de parent, agit comme_self.
Notes d'utilisation
>Éléments <base> multiples
Si plusieurs éléments <base> sont utilisés, seules les premières valeurs pour href et target sont utilisées, les autres valeurs sont ignorées.
Ancres dans la page
Les liens pointant vers un fragment dans le document — par exemple, <a href="#un-id"> — sont résolus avec le <base>, ce qui déclenche une requête HTTP vers l'URL de base avec le fragment ajouté.
Par exemple, avec <base href="https://exemple.fr/"> et ce lien : <a href="#ancre">Vers l'ancre</a>. Le lien pointe vers https://exemple.fr/#ancre.
target ne doit pas contenir de saut de ligne ASCII, de tabulation ou de <
Si l'attribut target contient un saut de ligne ASCII, une tabulation ou le caractère <, la valeur est réinitialisée à _blank.
Ceci vise à empêcher les attaques d'injection de balisage flottant, une attaque sans script dans laquelle un attribut target non fermé est injecté dans la page, de sorte que tout texte qui suit est capturé jusqu'à ce que le navigateur atteigne un caractère qui ferme l'attribut.
Open Graph
Les balises Open Graph ne tiennent pas de compte de l'élément <base>, et doivent toujours avoir des URL absolues complètes. Par exemple :
<meta property="og:image" content="https://exemple.fr/thumbnail.jpg" />
Exemples
<base href="https://www.exemple.fr/" />
<base target="_blank" />
<base target="_top" href="https://exemple.fr/" />
Résumé technique
| Catégories de contenu | Contenu de méta-données. |
|---|---|
| Contenu autorisé | Aucun ; c'est un élément vide. |
| Omission de balises | Il ne doit pas y avoir de balise fermante. |
| Parents autorisés |
N'importe quel élément
<head>
qui ne contient pas un autre élément
<base>.
|
| Rôle ARIA implicite | Pas de rôle correspondant |
| Rôles ARIA autorisés | Aucun role autorisé |
| Interface DOM | HTMLBaseElement |
Spécifications
| Specification |
|---|
| HTML> # the-base-element> |