<base> : l'élément pour l'URL de base du document
=================================================

L'élément **`<base>`** définit l'URL de base à utiliser pour recomposer toutes les URL relatives contenues dans un document. Il ne peut y avoir qu'un seul élément `<base>` au sein d'un document.

Il est possible d'accéder à l'URL de base d'un document via un script en utilisant `Node.baseURI`. Si le document ne possède pas d'élément `<base>`; la base par défaut pour la composition des URL sera l'URL courante.

|  |  |
| --- | --- |
| 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. |
| Interface DOM | `HTMLBaseElement` |

Attributs
---------

Les attributs universels peuvent être utilisés sur cet élément.

**Attention :** Si l'un des attributs suivants est spécifié, cet élément **doit** venir avant d'autres éléments dont les valeurs d'attribut sont des URL, comme l'attribut `href` de `<link>`.

**`href`**

 L'URL de base à utiliser afin de recomposer les URL relatives contenues dans le document. Si cet attribut est défini, cet élément doit être présent avant les éléments dont les attributs sont des URL.
 Les URI absolues et relatives sont autorisées (voir la note ci-après).


**`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 attributs `target` explicites.

Les mots-clés suivants ont des significations particulières :

* `_self` : Charge le résultat dans le contexte de navigation courant. C'est la valeur par défaut de l'attribut s'il n'est pas utilisé.
* `_blank` : Charge le résultat dans un nouveau contexte de navigation.
* `_parent` : Charge le résultat dans le contexte de navigation parent du contexte courant. S'il n'y a pas de parent, cette option aura le même effet que `_self`.
* `_top` : Charge le résultat dans le contexte de navigation de plus haut niveau (c'est-à-dire 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, cette option aura le même effet que `_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 ancres d'une page (`<a>`), par exemple `<a href="#ancre">ancre</a>`, sont résolues avec l'URL de base fournie via `<base>` et déclenche une requête HTTP vers l'URL de base.

1. Soit `<base href="https://example.com">`
2. … et ce lien : `<a href="#ancre">Anker</a>`
3. … le lien enverra vers `https://example.com/#ancre`.
### 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 :


```html
<meta property="og:image" content="https://example.com/thumbnail.jpg" />
```

Exemples
--------


```html
<base href="https://www.example.com/" />
<base target="\_blank" />
<base target="\_top" href="https://example.com/" />
```

Spécifications
--------------

| Specification |
| --- |
| HTML Standard # the-base-element |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.