Maison > interface Web > tutoriel CSS > Comment créer un div incliné sans utiliser de bordures en CSS ?

Comment créer un div incliné sans utiliser de bordures en CSS ?

Susan Sarandon
Libérer: 2024-11-11 08:08:03
original
320 Les gens l'ont consulté

How to Create a Slanted Div Without Using Borders in CSS?

Créer un div incliné sans utiliser de bordures

Problème :

Créer un div incliné à l'aide de bordures n'est pas réalisable lorsque le div est placé sur une image. Comment créer un bord incliné à l'aide de CSS qui est également réactif ?

Solution :

Un pseudo-élément asymétrique peut être utilisé pour créer l'arrière-plan incliné. Cette approche maintient le texte non affecté par l'opération de transformation. Voici comment y parvenir :

  1. Positionnez le pseudo-élément :
    Ajoutez un pseudo-élément :after au div avec un positionnement absolu.
  2. Définissez l'inclinaison :
    Utilisez le -webkit-transform: skew(-45deg); propriété (ou ses préfixes de fournisseur) pour incliner le pseudo-élément de 45 degrés.
  3. Définissez l'origine de la transformation :
    Spécifiez l'origine de la transformation : 100 % 0 ; pour permettre au pseudo-élément de s'incliner à partir du coin inférieur droit.
  4. Masquer le débordement :
    Ajouter un débordement : caché ; au pseudo-élément pour masquer les parties débordantes.
  5. Empiler derrière le contenu :
    Utilisez un z-index négatif sur le pseudo-élément pour l'empiler derrière le contenu du div.

Exemple Code :

div {
  position: relative;
  display: inline-block;
  padding: 1em 5em 1em 1em;
  overflow: hidden;
  color: #fff;
}

div:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  -webkit-transform-origin: 100% 0;
  -ms-transform-origin: 100% 0;
  transform-origin: 100% 0;
  -webkit-transform: skew(-45deg);
  -ms-transform: skew(-45deg);
  transform: skew(-45deg);
  z-index: -1;
}

body {
  background: url("https://farm3.staticflickr.com/2878/10944255073_973d2cd25c.jpg");
  background-size: cover;
}
Copier après la connexion

HTML :

<div>slanted div text</div>
<div>
  slanted div text<br />
  on several lines<br />
  an other line
</div>
<div>wider slanted div text with more text inside</div>
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal