W3docs

Propriété CSS border-image-width

La propriété CSS border-image-width définit la largeur de l'image de bordure. Découvrez des exemples et pratiquez par vous-même.

La propriété CSS border-image-width définit la largeur de l'image de bordure d'un élément — c'est-à-dire l'épaisseur avec laquelle la bordure basée sur une image est dessinée autour de la boîte. Elle fait partie des propriétés CSS3.

Quand l'utiliser

Vous n'avez besoin de border-image-width que lorsqu'un élément possède déjà une image de bordure définie avec border-image-source (et généralement border-image-slice). Utilisée seule, elle n'a aucun effet.

Un point important à retenir : border-image-width n'est pas la même chose que la propriété border-width classique. La propriété border-width ordinaire réserve de l'espace dans le modèle de boîte et influe sur la mise en page, tandis que border-image-width contrôle uniquement la largeur avec laquelle l'image est peinte dans la zone de bordure. Si vous rendez l'image plus large que la bordure réelle, elle peut déborder vers l'intérieur sur le rembourrage ou le contenu de l'élément sans déplacer les autres contenus. C'est pourquoi la plupart des exemples définissent d'abord une border transparente, puis dimensionnent l'image avec border-image-width.

Types de valeurs acceptées

La largeur de chaque côté peut être exprimée de plusieurs façons :

  • <length> — une taille fixe telle que 20px.
  • <number> — un multiplicateur de la border-width correspondante. border-image-width: 2 signifie « deux fois la largeur de bordure ». C'est le type utilisé par la valeur initiale 1.
  • <percentage> — relative à la taille de la zone d'image de bordure (les pourcentages horizontaux utilisent sa largeur, les verticaux sa hauteur).
  • auto — utilise la largeur/hauteur intrinsèque du border-image-slice correspondant, ou la border-width correspondante si aucune taille intrinsèque n'existe.

Nombre de valeurs à utiliser

border-image-width accepte une à quatre valeurs, en suivant la notation abrégée CSS standard dans le sens horaire :

  • Une valeur — s'applique aux quatre côtés.
  • Deux valeurs — la première est haut/bas, la seconde est gauche/droite.
  • Trois valeurs — la première est le haut, la deuxième est gauche/droite, la troisième est le bas.
  • Quatre valeurs — haut, droite, bas, gauche (dans le sens horaire depuis le haut).

Lorsqu'une valeur est omise, elle reflète le côté opposé : une quatrième valeur omise copie la deuxième (gauche = droite), une troisième omise copie la première (bas = haut), et une deuxième omise copie la première (une seule valeur s'applique donc à tout).

Valeur initiale1
S'applique àTous les éléments, sauf les éléments de tableau internes quand border-collapse vaut collapse. S'applique également à ::first-letter.
HéritéNon.
AnimableNon.
VersionCSS3
Syntaxe DOMobject.style.borderImageWidth = "20px";

Syntaxe

Syntaxe de la propriété CSS border-image-width

border-image-width: number | % | auto | initial | inherit;

Exemple de la propriété border-image-width :

Exemple de la propriété CSS border-image-width avec une valeur en px

<!DOCTYPE html>
<html>
  <head>
    <style>
      .border {
        border: 10px solid transparent;
        padding: 20px;
        border-image: url("/uploads/media/default/0001/01/812bf6a749522b8185c1beee20dd99dd6c6c87da.jpeg") round;
        border-image-slice: 20;
        border-image-repeat: round;
        border-image-width: 20px;
      }
    </style>
  </head>
  <body>
    <h1>Border-image-width Example</h1>
    <p class="border">Here the border-image-width is set to 20px.</p>
  </body>
</html>

Résultat

Propriété CSS border-image-width

Voici un autre exemple qui illustre ce qui change selon qu'on utilise une, deux, trois ou quatre valeurs.

Exemple de la propriété border-image-width avec différentes valeurs :

Exemple de la propriété CSS border-image-width avec deux, trois et quatre valeurs

<!DOCTYPE html>
<html>
  <head>
    <style>
      .border1 {
        border: 10px solid transparent;
        padding: 20px;
        border-image: url("/uploads/media/default/0001/01/812bf6a749522b8185c1beee20dd99dd6c6c87da.jpeg");
        border-image-slice: 10%;
        border-image-repeat: round;
        border-image-width: 20px;
      }
      .border2 {
        border: 10px solid transparent;
        padding: 20px;
        border-image: url("/uploads/media/default/0001/01/812bf6a749522b8185c1beee20dd99dd6c6c87da.jpeg");
        border-image-slice: 10%;
        border-image-repeat: round;
        border-image-width: 20px 10px;
      }
      .border3 {
        border: 10px solid transparent;
        padding: 40px;
        border-image: url("/uploads/media/default/0001/01/812bf6a749522b8185c1beee20dd99dd6c6c87da.jpeg");
        border-image-slice: 10%;
        border-image-repeat: round;
        border-image-width: 20px 10px 40px;
      }
      .border4 {
        border: 10px solid transparent;
        padding: 55px;
        border-image: url("/uploads/media/default/0001/01/812bf6a749522b8185c1beee20dd99dd6c6c87da.jpeg");
        border-image-slice: 10%;
        border-image-repeat: round;
        border-image-width: 20px 10px 40px 55px;
      }
    </style>
  </head>
  <body>
    <h1>The border-image-width Example</h1>
    <p class="border1">Here the border-image-width is set to 20px.</p>
    <p class="border2">Here the border-image-width is set to 20px and 10px.</p>
    <p class="border3">Here the border-image-width is set to 20px, 10px and 40px.</p>
    <p class="border4">Here the border-image-width is set to 20px, 10px, 40px and 55px.</p>
  </body>
</html>

Dans l'exemple ci-dessus, .border1 utilise une seule valeur pour les quatre côtés, tandis que .border4 attribue une largeur différente à chaque côté — remarquez comment les côtés plus épais peignent davantage l'image vers l'intérieur.

Propriétés associées

  • border-image-source — définit l'image utilisée pour la bordure.
  • border-image-slice — découpe l'image source en neuf régions formant la bordure.
  • border-image-outset — pousse l'image de bordure au-delà de la boîte de bordure.
  • border-width — la largeur de bordure classique que border-image-width multiplie lorsqu'un <number> est utilisé.

Valeurs

ValeurDescriptionEssayer
lengthUne unité de longueur (px) qui définit la taille de la border-width.Essayer »
numberLa largeur de bordure est définie comme un multiple de la border-width correspondante. Elle ne doit pas être négative, et la valeur par défaut est 1.Essayer »
percentageCalculée par rapport à la largeur de la zone d'image de bordure pour les décalages horizontaux et à la hauteur de la zone d'image de bordure pour les décalages verticaux.Essayer »
autoLa largeur de bordure est rendue égale à la largeur ou hauteur intrinsèque du border-image-slice correspondant.Essayer »
initialDéfinit la propriété à sa valeur par défaut.Essayer »
inheritHérite la propriété de son élément parent.

Pratique

Pratique
Que fait la propriété 'border-image-width' en CSS ?
Que fait la propriété 'border-image-width' en CSS ?
Was this page helpful?