logo oujood
🔍

Guide pas à pas pour utiliser efficacement shape-outside en CSS

OUJOOD.COM

Les propriétés CSS shape-outside: Définition

La propriété CSS shape-outside permet de définir la forme qui entoure un élément, créant ainsi une zone d'exclusion pour le contenu adjacent. Cela permet de détourer le contenu autour d'objets non rectangulaires, tels que des images ou des formes géométriques.

Syntaxe générale

La syntaxe générale de la propriété shape-outside est :

    shape-outside: <shape>;
  
Valeurs par défautnone
Inherited: non
Animable : oui En savoir plus sur l'animable
Version: CSS3

Valeurs possibles

  • none: Pas de forme définie, le contenu n'est pas détourné.
  • <shape-box>: Une forme définie par une boîte (par exemple, circle(), ellipse(), inset(), etc.).
  • <basic-shape>: Une forme de base géométrique (par exemple, circle, ellipse, polygon, path, etc.).
  • <image>: Une image utilisée pour définir la forme.

Exemples pratiques d'utilisation

Voici un exemple d'utilisation de la propriété shape-outside pour créer une zone d'exclusion autour d'un élément :

Exemple :    📋 Copier le code

<!DOCTYPE html>
<html lang="fr">
<head>
    <meta charset="UTF-8">
    <title>Tutoriel Auto Hexagonal CSS shape-outside</title> 
  <style>
	body{max-width:700px;
		text-align:justify;}
	.text-container {
	  width: 400px;
	  height: 300px;
	  shape-outside: circle(50%);
	  float: left;
	  margin-right: 20px;

	}
  </style>
</head>
<body>
<h1>Tutoriel Auto Hexagonal CSS shape-outside</h1>
<div class="text-container"></div>
  
  <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse ac tincidunt dui. Nullam lobortis, sapien sit amet placerat dignissim, enim nunc convallis lacus, id sollicitudin nisi ligula eu tellus. Duis vitae turpis non enim venenatis posuere. Nam eleifend felis eget neque condimentum, vel tempus metus pellentesque. Nulla facilisi. Suspendisse dapibus tellus vel consequat varius. Integer consequat lobortis elit, at volutpat est posuere non. Etiam cursus dolor at lorem condimentum posuere. Vestibulum fermentum risus eu ante sollicitudin, id cursus eros viverra. Nam maximus feugiat nisi, et hendrerit ante ullamcorper nec. Mauris gravida purus at mi aliquet, et facilisis odio aliquam. Nullam eleifend, diam sit amet efficitur eleifend, risus odio hendrerit sem, nec tincidunt tellus lectus at arcu.</p>
</body>
</html>

Voici le résultat

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse ac tincidunt dui. Nullam lobortis, sapien sit amet placerat dignissim, enim nunc convallis lacus, id sollicitudin nisi ligula eu tellus. Duis vitae turpis non enim venenatis posuere. Nam eleifend felis eget neque condimentum, vel tempus metus pellentesque. Nulla facilisi. Suspendisse dapibus tellus vel consequat varius. Integer consequat lobortis elit, at volutpat est posuere non. Etiam cursus dolor at lorem condimentum posuere. Vestibulum fermentum risus eu ante sollicitudin, id cursus eros viverra. Nam maximus feugiat nisi, et hendrerit ante ullamcorper nec. Mauris gravida purus at mi aliquet, et facilisis odio aliquam. Nullam eleifend, diam sit amet efficitur eleifend, risus odio hendrerit sem, nec tincidunt tellus lectus at arcu. Sed continue

Astuces et conseils d'utilisation

  • Assurez-vous que l'élément autour duquel vous définissez la forme possède une propriété de position (par exemple, float ou position: absolute;) pour que la propriété shape-outside puisse s'appliquer correctement.
  • Utilisez des valeurs de forme appropriées telles que circle(), ellipse(), polygon() ou path() pour créer des formes personnalisées.
  • Expérimentez avec des images pour définir des formes plus complexes en utilisant la valeur <image> de la propriété shape-outside.
  • Utilisez des valeurs relatives pour la forme, telles que des pourcentages, pour qu'elle s'adapte à la taille de l'élément.
  • Veillez à tester la compatibilité des navigateurs pour la propriété shape-outside, car certaines versions plus anciennes pourraient ne pas la prendre en charge.

Conclusion

La propriété CSS shape-outside est un outil puissant pour détourer le contenu autour d'éléments non rectangulaires, offrant ainsi des possibilités de mise en page créatives et attrayantes. En comprenant la syntaxe, les valeurs possibles et les astuces d'utilisation, vous pourrez exploiter pleinement cette fonctionnalité pour améliorer vos designs et créer des mises en page uniques.

Plus d'exemple pratique

ellipse()

Définir une forme elliptique autour d'un élément avec shape-outside.

.element {
  shape-outside: ellipse(150px 300px at 50% 50%);
}

Dans cet exemple:

  • 1. ".element" est un sélecteur CSS qui cible un élément spécifique au sein de votre page HTML. Vous pouvez remplacer ".element" par le sélecteur correspondant à l'élément que vous souhaitez styliser.
  • 2. "shape-outside" est une propriété CSS qui permet de définir une forme qui enveloppe le contenu de l'élément et détermine la disposition du texte et des autres éléments adjacents à cette forme.
  • 3. "ellipse(150px 300px at 50% 50%)" est une fonction de valeur pour la propriété "shape-outside". Elle définit une ellipse en spécifiant les dimensions de son rayon horizontal et vertical, ainsi que les coordonnées de son centre.
    "150px" est la valeur du rayon horizontal de l'ellipse.
    "300px" est la valeur du rayon vertical de l'ellipse.
    "at 50% 50%" signifie que le centre de l'ellipse est positionné à 50% de la largeur et à 50% de la hauteur de l'élément. Cela place l'ellipse au milieu de l'élément.

url()

La valeur de la propriété "shape-outside" est définie comme une URL vers une image nommée "circle.png". Cette image sera utilisée pour créer une forme de détourage circulaire autour de l'élément.

.element {
  shape-outside: url('circle.png'); 
}

Dans cet exemple, l'effet visuel résultant dépendra de la manière dont l'image "circle.png" est conçue. Par exemple, si l'image représente un cercle parfait avec un arrière-plan transparent, le contenu de l'élément sera affiché à l'intérieur de cette forme circulaire, tandis que le reste de la mise en page sera influencé par la forme de détourage.

Prise en charge de la propriété dans les navigateurs

Les numéros figurant dans le tableau indiquent la première version du navigateur qui prend totalement en charge la propriété.

ExplorateurGoogle ChromeInternet ExplorerFirefoxSafariOpera
Verssion37796210.1 24