Maison > interface Web > tutoriel CSS > Comment puis-je créer un bouton hexagonal allongé en utilisant un seul élément HTML et CSS ?

Comment puis-je créer un bouton hexagonal allongé en utilisant un seul élément HTML et CSS ?

DDD
Libérer: 2024-12-02 16:59:10
original
953 Les gens l'ont consulté

How Can I Create an Elongated Hexagonal Button Using Only One HTML Element and CSS?

Création d'un bouton allongé en forme d'hexagone avec un seul élément

Problème :

Peut vous créez un bouton de forme hexagonale en utilisant uniquement HTML et CSS sans recourir à plusieurs éléments ?

Solution possible :

Vous trouverez ci-dessous une méthode alternative pour obtenir cet effet en utilisant un seul élément :

  1. Utiliser des pseudo-éléments : Employez des pseudo-éléments :before et :after qui imitent la moitié de la taille du bouton principal, y compris bordures.
  2. Définir les moitiés de forme : L'élément :before forme la moitié supérieure de la forme, tandis que :after forme la moitié inférieure. Chacun a une hauteur et une disposition de bordure spécifiques pour ressembler à un hexagone.
  3. Inclinaison et position : RotateX avec perspective est utilisé pour incliner les pseudo-éléments et les positionner de manière appropriée pour former la forme globale du bouton. .

Exemple Code :

/* General Button Style */
.button {
  position: relative;
  display: block;
  background: transparent;
  width: 300px;
  height: 80px;
  line-height: 80px;
  text-align: center;
  font-size: 20px;
  text-decoration: none;
  text-transform: uppercase;
  color: #e04e5e;
  margin: 40px auto;
  font-family: Helvetica, Arial, sans-serif;
  box-sizing: border-box;
}

.button:before,
.button:after {
  position: absolute;
  content: '';
  width: 300px;
  left: 0px;
  height: 34px;
  z-index: -1;
}

.button:before {
  transform: perspective(15px) rotateX(3deg);
}

.button:after {
  top: 40px;
  transform: perspective(15px) rotateX(-3deg);
}

/* Button Border Style */
.button.border {
  border: 4px solid #e04e5e;
}

.button.border:hover:before,
.button.border:hover:after {
  background: #e04e5e;
}

.button.border:hover {
  color: #fff;
}
Copier après la connexion
<a href="#" class="button border">Click me!</a>
Copier après la connexion

Remarque : Pour utiliser les préfixes du navigateur, incluez modernizr ou les préfixes.

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!

source:php.cn
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal