Heim  >  Artikel  >  Web-Frontend  >  So erstellen Sie ein sechseckiges Bild in CSS

So erstellen Sie ein sechseckiges Bild in CSS

php中世界最好的语言
php中世界最好的语言Original
2018-01-30 10:31:242399Durchsuche

Dieses Mal zeige ich Ihnen, wie Sie mit CSS ein sechseckiges Bild erstellen. Was sind die Vorsichtsmaßnahmen für die Erstellung eines sechseckigen Bildes mit CSS?

Verwenden Sie ein einfaches Div mit Pseudoelementen, um dieses sechseckige Bild zu „zeichnen“. Das Prinzip besteht darin, dass drei Divs gleicher Breite und Höhe durch Positionierung und Drehung zu einem Sechseck kombiniert werden und dann der Hintergrund verwendet wird Bilder werden übereinander gelegt, um ein visuelles Gesamtbild zu ergeben. Lassen Sie es uns Schritt für Schritt umsetzen.

(1) Dann besteht der erste Schritt natürlich darin, den Container zu zeichnen. Der Container ist ein Div mit Breite und Höhe.

Bevor Sie zeichnen, müssen Sie ein Problem verstehen, das heißt, ein gleichseitiges Sechseck besteht aus drei Divs mit der gleichen Breite und Höhe (wie in der Abbildung unten gezeigt, daher müssen Breite und Höhe des Divs übereinstimmen). Erfülle √3 Mal die Bedingungen, um ein regelmäßiges Sechseck zu bilden. Ich werde dir hier nicht beibringen, wie man diesen Wert berechnet. Wenn du interessiert bist, kannst du ihn selbst mit trigonometrischen Funktionen berechnen Die Breite des äußeren Containers soll 190 Pixel und die Höhe 110 Pixel betragen. Der Code lautet wie folgt:

(2) Zeichnen Sie im zweiten Schritt das linke Div und sein Pseudonym -element 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(&#39;./eddie.jpg&#39;) 50% 50% no-repeat;
        background-size: auto 220px;
    }
</style>
<body>
    <div class=&#39;wrap&#39;>
    </div>
</body>
</html>

Verwenden Sie in diesem Schritt das neue div. Positionieren Sie die linke Seite des gedrehten Sechsecks, legen Sie die Breite und Höhe des neuen div-Pseudoelements fest und stellen Sie das Hintergrundbild entsprechend dem Bild oben ein Stellen Sie sicher, dass die Breite und Höhe des neuen Div-Pseudoelements der Breite und Höhe des gesamten Sechsecks entsprechen. Drehen Sie dann das Pseudoelement. Das Element lässt das Bild vertikal erscheinen (das neue Div sollte gedreht werden, damit das Pseudoelementbild angezeigt wird). ebenfalls gedreht, daher muss es in den normalen Winkel zurückgedreht werden) und die Position des Pseudoelements muss angepasst werden (das neue Div wird gedreht, was sich auf die Positionierungsposition des Pseudoelements auswirkt). Neues Div soll ausgeblendet werden und die linke Seite des Sechsecks wird gezeichnet

(3) Der dritte Schritt besteht darin, das rechte Div und sein Pseudoelementbild zu zeichnen
<!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(&#39;./eddie.jpg&#39;) 50% 50% no-repeat;
        background-size: auto 220px;
    }
    .common{
        position: absolute;
        height: 100%;
        width: 100%;
        overflow: hidden;
        left:0;
23
    }
    .common:before{
        content:&#39;&#39;;
        position: absolute;
        background:url(&#39;./eddie.jpg&#39;) 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>
    <div class=&#39;wrap&#39;>
        <div class=&#39;left common&#39;></div>
     
    </div>
</body>
</html>

Dieser Schritt Das Prinzip ist das gleiche wie im zweiten Teil, aber der Blickwinkel ist umgekehrt, daher werde ich nicht auf Details eingehen. Laden Sie einfach den vollständigen Code hoch.

An dieser Stelle können Sie das Bild anzeigen Anfang des Artikels können Sie auch andere Formen von Bildanzeigeeffekten erstellen. In Zukunft wird die Bildanzeige kein einzelner Baustein mehr sein Ich glaube, dass Sie die Methode beherrschen, nachdem Sie diese Fälle gelesen haben. Bitte beachten Sie andere verwandte Artikel auf der chinesischen PHP-Website:
<!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(&#39;./eddie.jpg&#39;) 50% 50% no-repeat;
        background-size: auto 220px;
    }
    .common{
        position: absolute;
        height: 100%;
        width: 100%;
        overflow: hidden;
        left:0;
 
    }
    .common:before{
        content:&#39;&#39;;
        position: absolute;
        background:url(&#39;./eddie.jpg&#39;) 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>
    <div class=&#39;wrap&#39;>
        <div class=&#39;left common&#39;></div>
        <div class=&#39;right common&#39;></div>
    </div>
</body>
</html>

Wie sollte das HTML5-Dropdown-Feld sein? Erhöhen Sie die Benutzererfahrung

So verwenden Sie H5s WebGL, um JSON- und Echarts-Diagramme auf derselben Oberfläche zu erstellen

Anleitung Nutzen Sie die neuen semantischen Tag-Funktionen von H5

Das obige ist der detaillierte Inhalt vonSo erstellen Sie ein sechseckiges Bild in CSS. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn