Maison > Article > interface Web > À propos de la méthode de réalisation d'une image hexagonale en CSS
Cet article présente principalement l'exemple de code pour réaliser des images hexagonales avec CSS. Le contenu est assez bon, je vais le partager avec vous maintenant et le donner comme référence.
Cet article présente principalement l'exemple de code pour réaliser des images hexagonales avec CSS et le partage avec tout le monde. Les détails sont les suivants :
Si rien d'autre, parlons d'abord de l'effet :
Utilisez un simple p avec des pseudo-éléments pour « dessiner » cette image hexagonale. Le principe est que trois p de même largeur et hauteur sont assemblés en un hexagone par positionnement et rotation, puis utilisées, les images d'arrière-plan sont superposées pour former une image visuellement complète. Mettons-le en œuvre étape par étape. (1) Ensuite, la première étape consiste bien sûr à dessiner le conteneur. Le conteneur est un p avec une largeur et une hauteur. Avant de dessiner, vous devez comprendre un problème, c'est-à-dire qu'un hexagone équilatéral est composé de trois p de même largeur et hauteur (comme le montre la figure ci-dessous), donc la largeur et la hauteur de p doivent satisfaire √ Seulement trois fois les conditions peuvent être utilisées pour former un hexagone régulier. Je ne vous montrerai pas ici comment calculer cette valeur. Si cela vous intéresse, vous pouvez utiliser des fonctions trigonométriques pour la calculer vous-même en privé.
Ici, je règle la largeur du conteneur extérieur à 190 px, la hauteur à 110 px, puis je définis l'image d'arrière-plan. Le code est le suivant
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <style> .wrap{ height:110px; width: 190px; position: relative; margin: 200px auto; background: url('./eddie.jpg') 50% 50% no-repeat; background-size: auto 220px; } </style> <body> <p class='wrap'> </p> </body> </html>L'effet est une image
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <style> .wrap{ height:110px; width: 190px; position: relative; margin: 200px auto; background: url('./eddie.jpg') 50% 50% no-repeat; background-size: auto 220px; } .common{ position: absolute; height: 100%; width: 100%; overflow: hidden; left:0; 23 } .common:before{ content:''; position: absolute; background:url('./eddie.jpg') 50% 50% no-repeat; background-size: auto 220px; width: 190px; height: 220px; } .left{ transform: rotate(60deg); } .left:before{ transform: rotate(-60deg) translate(48px,-28px); } </style> <body> <p class='wrap'> <p class='left common'></p> </p> </body> </html>L'effet est la suivante : (3) La troisième étape consiste à dessiner le p droit et son image pseudo-élément Le principe de cette étape est le pareil que la deuxième étape, mais l'angle est inversé, donc je n'entrerai pas dans les détails et passerai directement au code complet
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <style> .wrap{ height:110px; width: 190px; position: relative; margin: 200px auto; background: url('./eddie.jpg') 50% 50% no-repeat; background-size: auto 220px; } .common{ position: absolute; height: 100%; width: 100%; overflow: hidden; left:0; } .common:before{ content:''; position: absolute; background:url('./eddie.jpg') 50% 50% no-repeat; background-size: auto 220px; width: 190px; height: 220px; } .left{ transform: rotate(60deg); } .left:before{ transform: rotate(-60deg) translate(48px,-28px); } .right{ transform: rotate(-60deg); } .right:before{ transform: rotate(60deg) translate(48px,28px); bottom: 0; } </style> <body> <p class='wrap'> <p class='left common'></p> <p class='right common'></p> </p> </body> </html>À ce stade, l'image au début de l'article peut être affiché En utilisant ce principe, vous pouvez également créer d’autres effets d’affichage d’image sous différentes formes. Bienvenue pour poursuivre vos recherches. À l’avenir, l’affichage des images ne se résumera plus à une seule ligne de briques ! ! Ce qui précède représente l'intégralité du contenu de cet article. J'espère qu'il sera utile à l'étude de chacun. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois ! Recommandations associées :
Utilisez CSS3 pour obtenir des effets d'entraînement et H5 pour obtenir des effets de vagues dynamiques
Comment configurer CSS
Couleur de la police du texte
Comment dessiner une animation de cercle de chargement avec CSS3
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!