--- title: element slug: Web/API/Element tags: - API - DOM - Elements - Interface - Reference - Web API browser-compat: api.Element translation_of: Web/API/Element ---
{{APIRef("DOM")}}

Element est la classe de base la plus générale à partir de laquelle tous les objets d'un Document héritent. Il n'a que des méthodes et des propriétés communes à tous les types d'éléments. Les classes plus spécifiques héritent d'Element. Par exemple, l'interface HTMLElement est l'interface de base pour les éléments HTML, tandis que l'interface {{domxref ("SVGElement")}} est la base de tous les éléments SVG. La plupart des fonctionnalités sont spécifiées plus bas dans la hiérarchie des classes.

Les langages en dehors du domaine de la plate-forme Web, comme XUL via l'interface XULElement, implémentent également Element.

{{InheritanceDiagram}}

Propriétés

Hérite des propriétés de son interface parent Node et, par extension, du parent de cette interface EventTarget. Il implémente les propriétés de ParentNode, ChildNode, NonDocumentTypeChildNode et Animatable.

Element.attributes {{readOnlyInline}}
Retourne un objet NamedNodeMap contenant les attributs assignés de l'élément HTML correspondant.
Element.classList {{readOnlyInline}}
Retourne une DOMTokenList contenant la liste des attributs de classe.
Element.className
est une DOMString représentant la classe de l'élément.
Element.clientHeight {{experimental_inline}} {{readOnlyInline}}
Retourne un {{jsxref("Number")}} représentant la hauteur intérieure de l'élément.
Element.clientLeft {{readOnlyInline}}
Retourne un {{jsxref("Number")}} représentant la largeur de la bordure gauche de l'élément.
Element.clientTop {{readOnlyInline}}
Retourne un {{jsxref("Number")}} représentant la largeur de la bordure haut de l'élément.
Element.clientWidth {{readOnlyInline}}
Retourne un {{jsxref("Number")}} représentant la largeur intérieure de l'élément.
Element.computedName {{readOnlyInline}}
Retourne une DOMString contenant l'étiquette affichée pour l'accessibilité.
Element.computedRole {{readOnlyInline}}
Retourne une DOMString contenant le rôle ARIA qui a été appliqué à un élément particulier.
Element.id
est une DOMString représentant l'id (identifiant) de l'élément.
Element.innerHTML
Est une DOMString représentant la partie locale du nom qualifié de l'élément.
Element.localName {{readOnlyInline}}
une DOMString représentant la partie locale du nom qualifié de l'élément.
Element.namespaceURI {{readonlyInline}}
L'URI d'espace de noms de l'élément, ou null s'il n'est pas un espace de noms.

Note : Dans Firefox 3.5 et versions antérieures, les éléments HTML ne sont pas dans un espace de noms. Dans les versions ultérieures, les éléments HTML se trouvent dans l'espace de noms http://www.w3.org/1999/xhtml dans les arborescences HTML et XML.

NonDocumentTypeChildNode.nextElementSibling {{readOnlyInline}}
est un Element suivant immédiatement dans l'arbre celui donné, ou null s'il n'y a pas de noeud frère.
Element.outerHTML
Est une DOMString représentant le balisage de l'élément, y compris son contenu. Lorsqu'il est utilisé en tant qu'initiateur, remplace l'élément par des nœuds analysés à partir de la chaîne donnée.
Element.part
Représente le ou les identifiants part de l'élément (c'est-à-dire définis en utilisant l'attribut part), retournés dans un DOMTokenList.
Element.prefix {{readOnlyInline}}
Une DOMString représentant le préfixe de l'espace de noms de l'élément, ou null si aucun préfixe n'est spécifié.
NonDocumentTypeChildNode.previousElementSibling {{readOnlyInline}}
Est un Element, celui précédant immédiatement dans l'arbre l'élément donné, ou null s'il n'y a pas d'élément frère.
Element.scrollHeight {{readOnlyInline}}
Retourne un {{jsxref("Number")}} représentant la hauteur de vue de défilement d'un élément.
Element.scrollLeft
Est un {{jsxref("Number")}} représentant le décalage de défilement gauche de l'élément.
Element.scrollLeftMax {{non-standard_inline}} {{readOnlyInline}}
Retourne un {{jsxref("Number")}} représentant le décalage maximum de défilement gauche possible pour l'élément.
Element.scrollTop
Est un {{jsxref("Number")}} représentant le décalage de défilement haut de l'élément.
Element.scrollTopMax {{non-standard_inline}} {{readOnlyInline}}
Retourne un {{jsxref("Number")}} représentant le décalage maximum de défilement haut possible pour l'élément.
Element.scrollWidth {{readOnlyInline}}
Retourne un {{jsxref("Number")}} représentant la largeur de vue de défilement de l'élément.
Element.shadowRoot {{readOnlyInline}}
Renvoie la racine shadow la plus jeune hébergée par l'élément.
Element.openOrClosedShadowRoot {{Non-standard_Inline}}{{readOnlyInline}}
Retourne la racine fantôme qui a l'élément pour hôte, qu'elle soit ouverte ou fermée. Disponible seulement pour les WebExtensions.
Element.slot {{experimental_inline}}
Renvoie le nom de l'emplacement du DOM shadow attaché à l'élément. Un emplacement (slot) est un espace réservé dans un composant web que les utilisateurs peuvent remplir avec leur propre balisage.
Element.tabStop {{non-standard_inline}}
Est un {{jsxref("Boolean")}} indiquant si l'élément peut recevoir un focus d'entrée via la touche de tabulation.
Element.tagName {{readOnlyInline}}
Retourne une String avec le nom de la balise pour l'élément donné.
Element.undoManager {{experimental_inline}} {{readOnlyInline}}
Retourne le UndoManager associé à l'élément.
Element.undoScope {{experimental_inline}}
Est un {{jsxref("Boolean")}} indiquant si l'élément est un hôte de portée d'annulation, ou non.

Note : DOM niveau 3 définit namespaceURI, localName et prefix sur l'interface Node. Dans DOM4, ils ont été déplacés dans Element.

Ce changement est implémenté dans Chrome depuis la version 46.0 et Firefox à partir de la version 48.0.

Propriété inclue dans "Slotable"

L'interface Element inclut la propriété suivante, définie sur le "mixin" Slotable.

Slotable.assignedSlot{{readonlyInline}}
renvoie un HTMLSlotElement représentant le {{htmlelement("slot")}} sur lequel le noeud est inséré.

Méthodes

Hérite des méthodes de son parent {{domxref ("Node")}} et de son propre parent {{domxref ("EventTarget")}}, et implémente celles de ParentNode, ChildNode , NonDocumentTypeChildNode et Animatable.

EventTarget.addEventListener()
enregistre sur l'élément un gestionnaire d'évènements propre à un type d'évènements.
Element.attachShadow()
Attache un arbre DOM shadow à l'élément spécifié et renvoie une référence à sa ShadowRoot (racine).
Element.animate() {{experimental_inline}}
Une méthode raccourcie pour créer et exécuter une animation sur un élément. Renvoie l'instance d'objet Animation créée.
Element.closest()
Retourne l'Element qui est l'ancêtre le plus proche de l'élément courant (ou l'élément courant lui-même) qui correspond aux sélecteurs donnés dans le paramètre.
Element.createShadowRoot() {{experimental_inline}} {{deprecated_inline()}}
Crée un shadow DOM sur l'élément, le transforme en un hôte fantôme. Renvoie un ShadowRoot.
Element.computedStyleMap() {{Experimental_Inline}}
Retourne une interface StylePropertyMapReadOnly fournissant une représentation en lecture seule d'un bloc de déclaration de règles CSS. Il s'agit d'une alternative à CSSStyleDeclaration.
EventTarget.dispatchEvent()
Répartit un évènement sur ce noeud dans le DOM et renvoie un {{jsxref("Boolean")}} qui indique qu'au-moins un gestionnaire ne l'a pas annulé.
Element.getAnimations() {{experimental_inline}}
Renvoie un tableau d'objets Animation actuellement actifs sur l'élément.
Element.getAttribute()
Retrouve la valeur de l'attribut nommé depuis le noeud courant et le retourne comme un {{jsxref("Object")}}.
Element.getAttributeNames()
Retourne un tableau des noms d'attribut de l'élément courant.
Element.getAttributeNS()
Retrouve la valeur de l'attribut avec le nom spécifié et l'espace de noms, depuis le noeud courant, et le retourne comme un {{jsxref("Object")}}.
Element.getBoundingClientRect()
Retourne la taille d'un élément et ses positions relatives au "viewport".
Element.getClientRects()
Retourne une collection de rectangles qui indiquent les rectangles de délimitation pour chaque ligne de texte dans un client.
Element.getElementsByClassName()
Retourne une HTMLCollection qui contient tous les descendants de l'élément courant qui possèdent la liste des classes donnée dans le paramètre.
Element.getElementsByTagName()
Renvoie une {{domxref ("HTMLCollection")}} contenant tous les éléments descendants, d'un nom de tag particulier, de l'élément en cours.
Element.getElementsByTagNameNS()
Renvoie une {{domxref ("HTMLCollection")}} contenant tous les éléments descendants, d'un nom de balise particulier et d'un espace de nom, de l'élément en cours.
Element.hasAttribute()
Retourne un {{jsxref("Boolean")}} indiquant si l'élément a un attribut spécifié ou non.
Element.hasAttributeNS()
Retourne un {{jsxref("Boolean")}} indiquant si l'élément a un attribut spécifié, dans l'espace de noms spécifié, ou non.
Element.hasAttributes()
Retourne un {{jsxref("Boolean")}} indiquant si l'élément a un ou plusieurs attributs HTML présents.
Element.hasPointerCapture()
Indique si l'élément sur lequel la méthode est invoquée a une capture de pointeur pour le pointeur spécifié par son identifiant.
Element.insertAdjacentElement
Insère un noeud d'élément donné à la position donnée par rapport à l'élément sur lequel il a été invoqué.
Element.insertAdjacentHTML
Analyse le texte au format HTML ou XML et insère les nœuds résultants dans l'arborescence dans la position indiquée.
Element.insertAdjacentText
Insère un noeud de texte donné à la position donnée par rapport à l'élément qui l'invoque.
Element.matches()
Retourne un {{jsxref("Boolean")}} indiquant si l'élément serait sélectionné ou non par la chaîne de sélection spécifiée.
Element.pseudo() {{Experimental_Inline}}
Retourne un CSSPseudoElement représentant les pseudo-élément enfants correspondant au sélecteur de pseudo-élément fourni.
Element.querySelector()
Retourne le premier Node correspondant à la chaîne du sélecteur spécifiée par rapport à l'élément.
Element.querySelectorAll
Retourne une NodeList des noeuds qui correspondent à la chaîne du sélecteur par rapport à l'élément.
Element.releasePointerCapture
Relâche (arrête) la capture de pointeur précédemment définie pour un {{domxref("PointerEvent","évènement pointeur")}} spécifique.
ChildNode.remove() {{experimental_inline}}
Supprime l'élément de la liste des enfants de son parent.
Element.removeAttribute()
Supprime l'attribut nommé du noeud courant.
Element.removeAttributeNS()
Supprime l'attribut avec le nom et l'espace de nom spécifiés du noeud actuel.
EventTarget.removeEventListener()
Supprime un écouteur d'évènement de l'élément.
Element.requestFullscreen() {{experimental_inline}}
Demande de manière asynchrone au navigateur de mettre l'élément en plein écran.
Element.requestPointerLock() {{experimental_inline}}
Permet de demander de manière asynchrone que le pointeur soit verrouillé sur l'élément donné.
Element.scroll()
Défile vers les coordonnées fournises au sein d'un élément.
Element.scrollBy()
Défile au sein d'un élément d'autant de pixels que demandé.
Element.scrollIntoView() {{experimental_inline}}
Fait défiler la page jusqu'à ce que l'élément entre dans la vue.
Element.scrollTo()
Défile vers les coordonnées fournises au sein d'un élément.
Element.setAttribute()
Définit la valeur d'un attribut nommé du nœud actuel.
Element.setAttributeNS()
Définit la valeur de l'attribut avec le nom et l'espace de noms spécifiés, à partir du nœud actuel.
Element.setCapture() {{non-standard_inline}}
Configure la capture d'évènements de souris, en redirigeant tous les évènements de la souris vers cet élément.
Element.setPointerCapture()
Désigne un élément spécifique en tant que cible de capture des futurs évènements de pointeur.
Element.toggleAttribute()
Alterne un attribut booléen sur l'élément spécifié, le supprimant s'il est présent et l'ajoutant s'il est absent.

Méthodes obsolètes

Element.getAttributeNode(){{obsolete_inline}}
Retrouve la représentation du noeud de l'attribut nommé depuis le noeud courant et le retourne comme un Attr.
Element.getAttributeNodeNS(){{obsolete_inline}}
Retrouve la représentation du noeud de l'attibut avec le nom spécifié et l'espace de noms, depuis le noeud courant, et le retourne comme un Attr.
Element.removeAttributeNode() {{obsolete_inline}}
Supprime la représentation du noeud de l'attibut nommé du noeud actuel.
Element.setAttributeNode() {{obsolete_inline}}
Définit la représentation de noeud de l'attribut nommé à partir du noeud actuel.
Element.setAttributeNodeNS() {{obsolete_inline}}
Synchronise la représentation du nœud de l'attribut avec le nom et l'espace de noms spécifiés, à partir du nœud actuel.

Évènements

Ecoute ces évènements en utilisant addEventListener() ou en assignant un écouteur d'évènement (event listener) au oneventname propriété de cette interface.

cancel
Déclenche sur {{HTMLElement("dialog")}} lorsque l'utilisateur indique au navigateur qu'il souhaite fermer la boîte de dialogue en cours. Pour exemple, le navigateur peut déclencher cet évènement lorsque l'utilisateur appuie sur la touche Esc ou clique sur le bouton "Ferme le dialogue" qui fait partie de l'interface utilisateur du navigateur .
Aussi disponible via la propriété oncancel.
error
Déclenché quand le chargement d'une ressource échoue, ou qu'elle ne peut pas être utilisée. Par exemple, il sera déclenché si un script contient une erreur d'exécution ou une image ne peut être trouvée ou est invalide.
Il est aussi disponible via la propriété onerror.
scroll
Déclenché quand la vue du document un élément a été défilé.
Il est aussi disponible via la propriété onscroll.
select
Déclenché quand une portion de texte a été sélectionnée.
Il est aussi disponible via la propriété onselect.
show
Déclenché quand un évènement contextmenu est lui-même déclenché et bouillonne jusqu'à un élément ayant un attribut contextmenu. {{deprecated_inline}}
Il est aussi disponible via la propriété onshow.
wheel
Déclenché quand l'utilisateur tourne une molette sur un appareil avec pointeur (typiquement, une souris).
Il est aussi disponible via la propriété onwheel.

Évènements du presse-papiers

copy
Déclenché lorsque l'utilisateur lance une action de copie via l'interface utilisateur du navigateur.
Aussi disponible via la propiété oncopy.
cut
Déclenché lorsque l'utilisateur lance une action de couper via l'interface utilisateur du navigateur.
Aussi disponible via la propriété oncut.
paste
Déclenché lorsque l'utilisateur lance une action de coller via l'interface utilisateur du navigateur.
Aussi disponible via la propriété onpaste.

Évènements de composition

compositionend
Déclenché quand un système de composition de texte tel qu'un {{glossary("input method editor")}} complète ou annule la session actuelle de composition.
compositionstart
Déclenché quand un système de composition de texte tel qu'un {{glossary("input method editor")}} démarre une nouvelle session de composition.
compositionupdate
Déclenché quand un nouveau caractère est reçu dans le contexte d'une session de composition de texte contrôlée par un système de composition de texte tel qu'un {{glossary("input method editor")}}.

Évènements de focale

blur
Déclenché quand un élément a perdu la focale.
Il est aussi disponible via la propriété onblur.
focus
Déclenché quand un élément a obtenu la focale.
Il est aussi disponible via la propriété onfocus.
focusin
Déclenché quand un élément est sur le point d'obtenir la focale.
focusout
Déclenché quand un élément est sur le point de perdre la focale.

Évènements de plein écran

fullscreenchange
Envoyé à un Element quand il transite vers ou depuis un état de plein écran.
Il est aussi disponible via la propriété onfullscreenchange.
fullscreenerror
Envoyé à un Element si une erreur survient en tentant de passer vers ou de quitter le plein écran.
Il est aussi disponible via la propriété onfullscreenerror.

Évènements de clavier

keydown
Déclenché quand une touche est pressée.
Il est aussi disponible via la propriété onkeydown.
keypress
Déclenché quand une touche produit un caractère est pressée. {{deprecated_inline}}
Il est aussi disponible via la propriété onkeypress.
keyup
Déclenché quand une touche est relâchée.
Il est aussi disponible via la propriété onkeyup.

Évènements de souris

auxclick
Déclenché quand un bouton secondaire d'un appareil de pointage (par exemple, tout bouton d'une souris autre que le gauche) est pressé et relâché sur le même élément.
Il est aussi disponible via la propriété onauxclick.
click
Déclenché quand un bouton d'un appareil de pointage (par exemple, le clic gauche d'une souris) est pressé et relâché sur le même élément.
Il est aussi disponible via la propriété onclick.
contextmenu
Déclenché quand l'utilisateur tente d'ouvrir un menu contextuel.
Il est aussi disponible via la propriété oncontextmenu.
dblclick
Déclenché quand un bouton d'un appareil de pointage (par exemple, le clic gauche d'une souris) est cliqué deux fois sur le même élément.
Il est aussi disponible via la propriété ondblclick.
DOMActivate {{Deprecated_Inline}}
Déclenché quand un élément est activé, par exemple, par le biais d'un clic de souris ou d'une pression de touche sur un clavier.
mousedown
Déclenché quand un bouton d'un appareil de pointage est pressé sur un élément.
Il est aussi disponible via la propriété onmousedown.
mouseenter
Déclenché quand un appareil de pointage (généralement une souris) est déplacé à l'intérieur de l'élément sur lequel l'écouteur est attaché.
Il est aussi disponible via la propriété onmouseenter.
mouseleave
Déclenché quand un appareil de pointage est déplacé à l'extérieur de l'élément sur lequel l'écouteur est attaché.
Il est aussi disponible via la propriété onmouseleave.
mousemove
Déclenché quand un appareil de pointage est déplacé au sein de l'élément sur lequel l'écouteur est attaché.
Il est aussi disponible via la propriété onmousemove.
mouseout
Déclenché quand un appareil de pointage est déplacé à l'extérieur de l'élément sur lequel l'écouteur est attaché ou sur un de ses enfants.
Il est aussi disponible via la propriété onmouseout.
mouseover
Déclenché quand un appareil de pointage est déplacé au sein de l'élément sur lequel l'écouteur est attaché ou sur un de ses enfants.
Il est aussi disponible via la propriété onmouseover.
mouseup
Déclenché quand un bouton d'un appareil de pointage est relâché sur un élément.
Il est aussi disponible via la propriété onmouseup.
webkitmouseforcechanged
Déclenché à chaque fois que le niveau de pression sur un écran tactile change.
webkitmouseforcedown
Déclenché après l'évènement de pression de bouton d'un appareil de pointage à la condition qu'une pression suffisante ait été produite pour la qualifier de "clic forcé".
webkitmouseforcewillbegin
Déclenché avant l'évènement mousedown.
webkitmouseforceup
Déclenché après l'évènement webkitmouseforcedown à la condition qu'une pression suffisamment en baisse ait été observée pour mettre fin au "clic forcé".

Évènements de toucher

touchcancel
Déclenché quand un ou plusieurs points de toucher ont été altérés d'une manière relative à l'implantation (par exemple, trop de points de contacts ont été créés).
Il est aussi disponible via la propriété ontouchcancel.
touchend
Déclenché quand un ou plusieurs points de toucher sont retirés de la surface tactile.
Il est aussi disponible via la propriété ontouchend
touchmove
Déclenché quand un ou plusieurs points de toucher sont déplacés sur la surface tactile.
Il est aussi disponible via la propriété ontouchmove
touchstart
Déclenché quand un plusieurs points de toucher sont placés sur la surface tactile.
Il est aussi disponible via la propriété ontouchstart.

Spécifications

{{Specifications}}

Compatibilité des navigateurs

{{Compat}}