--- title: overflow slug: Web/CSS/overflow tags: - CSS - Propriété - Propriété raccourcie - Reference translation_of: Web/CSS/overflow ---
La propriété CSS overflow
est une propriété raccourcie qui définit comment gérer le dépassement du contenu d'un élément dans son bloc. Elle définit les valeurs des propriétés {{cssxref("overflow-x")}} et {{cssxref("overflow-y")}}.
Le code source de cet exemple interactif est disponible dans un dépôt GitHub. Si vous souhaitez contribuez à ces exemples, n'hésitez pas à cloner https://github.com/mdn/interactive-examples et à envoyer une pull request !
Lorsqu'on utilise la propriété overflow
avec une autre valeur que visible
(la valeur par défaut), cela entraîne la création d'un nouveau contexte de formatage de bloc. Cette création est nécessaire d'un point de vue technique. Ceci est nécessaire techniquement puisque si un élément flottant traverse l'élément avec barres de défilement, cela forcera l'encapsulation du contenu de ce dernier autour de l'élément flottant. L'encapsulation devrait alors se produire après chaque défilement de la barre et mènerait à une expérience utilisateur dégradée
Afin que la propriété overflow
puisse avoir un effet, le conteneur de niveau de bloc doit avoir une hauteur limite (définie grâce à {{cssxref("height")}} ou {{cssxref("max-height")}}) ou avoir white-space
avec la valeur nowrap.
Note : Si on définit un axe avec visible
(la valeur par défaut) et qu'on définit l'autre axe avec une valeur différente, alors la valeur du premier axe (visible
) sera considérée comme auto
.
Note : Lorsqu'on définit, via un script, la propriété scrollTop
sur les éléments HTML pertinents, même lorsque overflow
vaut hidden
, il faut parfois faire défiler l'élément.
/* Valeurs avec un mot-clé */ overflow: visible; overflow: hidden; overflow: clip; overflow: scroll; overflow: auto; overflow: hidden visible; /* Valeurs globales */ overflow: inherit; overflow: initial; overflow: unset;
La propriété overflow
peut être définie grâce à un ou deux des mots-clés suivants. Si deux mots-clés sont utilisé, le premier sera appliqué à overflow-x
et le second à overflow-y
. Si une seule valeur est utilisée, elle sera appliquée à overflow-x
et à overflow-y
.
visible
hidden
clip
hidden
au sens où le contenu est rogné pour s'inscrire dans la boîte de remplissage. Comme hidden
, clip
ne présente pas de barre de défilement mais contrairement à hidden
, clip
empêche tout défilement, y compris à l'aide de scripts. La boîte n'est pas un conteneur de défilement et ne définit pas de nouveau contexte de formatage. Si on souhaite obtenir un nouveau contexte de formatage, il faudra utiliser {{cssxref("display", "display: flow-root", "#flow-root")}}.scroll
auto
overlay
{{Deprecated_inline}}auto
sauf que les barres de défilement sont au-dessus du contenu plutôt que de prendre de la place. Cette valeur est uniquement prise en charge par les navigateurs basés sur WebKit (Safari) ou Blink (Chrome, Opera).-moz-scrollbars-none
{{obsolete_inline}}overflow:hidden
doit être utilisé à la place.
Note : À partir de Firefox 63, cette fonctionnalité est placée derrière une préférence qui doit être activée. Dans about:config
, il faut passer layout.css.overflow.moz-scrollbars.enabled
à true
.
-moz-scrollbars-horizontal
{{Deprecated_inline}}Note : À partir de Firefox 63, cette fonctionnalité est placée derrière une préférence qui doit être activée. Dans about:config
, il faut passer layout.css.overflow.moz-scrollbars.enabled
à true
.
-moz-scrollbars-vertical
{{Deprecated_inline}}Note : À partir de Firefox 63, cette fonctionnalité est placée derrière une préférence qui doit être activée. Dans about:config
, il faut passer layout.css.overflow.moz-scrollbars.enabled
à true
.
-moz-hidden-unscrollable
{{non-standard_inline}}<html>
, <body>
(avec les flèches du clavier et la roue de la souris).p { width: 12em; height: 6em; border: dotted; /* le contenu n'est pas rogné */ overflow: visible; }
visible
(default)
Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium.
p { /* pas d'ascenseur fourni */ overflow: hidden; }
p { /* les ascenseurs sont toujours affichés */ overflow: scroll; }
overflow: scroll
Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium.
p { /* les ascenseurs sont affichés si nécessaires */ overflow: auto; }
overflow: auto
Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium.
Spécification | État | Commentaires |
---|---|---|
{{SpecName('CSS3 Overflow', '#propdef-overflow', 'overflow')}} | {{Spec2('CSS3 Overflow')}} | La syntaxe permet désormais d'utiliser une ou deux valeurs. |
{{SpecName('CSS2.1', 'visufx.html#overflow', 'overflow')}} | {{Spec2('CSS2.1')}} | Définition initiale. |
{{cssinfo}}
{{Compat("css.properties.overflow")}}