CSS3 Tutorial – Valentinstags-Herz nur in CSS3
CSS3 Tutorial – Valentinstags-Herz nur in CSS3
Es war wieder einmal soweit. Es war mal wieder Valentinstag. Für Euch Coder, mit viel Liebe zum Webdesign, habe ich zum Valentinstag noch etwas spezielles herausgesucht.
Ich möchte Euch zeigen, wie man nur mit CSS3 ein Valentinstags Herz machen kann.
Wir beginnen mit einem normalen DIV Container:
Beispielcode HTML:
<div class="herzform"></div>
Der Container soll ein Quadrat mit einer beliebigen Farbe sein. Also geben wir dem Div erstmal eine feste Höhe und eine feste Breite. Beiden geben wir den gleichen Wert.
Beispielcode CSS3:
.herzform { position: absolute; left: 200px; top: 150px; width: 200px; height: 200px; background-color: #cd2022; }
Jetzt haben wir ein Quadrat mit einem satten rot. Zu dem Quadrat müssen wir nun noch zwei Kreise zeichnen. Beginnen wir mit dem ersten Kreis!
Wir verwenden das CSS Pseudo Element before. Damit fügt CSS vor dem Herzform Div einen Container ein. Wir nehemn hier die Breite und Höhe des Quadrates und verschieben es um die halbe Breite nach links. Wir geben ihm einen Border-Radius von 50% damit wir einen schönen Kreis erhalten.
Beispielcode CSS3:
.herzform { position: absolute; left: 200px; top: 150px; width: 200px; height: 200px; background-color: #cd2022; } .herzform:before{ position: absolute; bottom: 0; left: -100px; width: 200px; height: 200px; content: ''; -webkit-border-radius: 50%; -moz-border-radius: 50%; -o-border-radius: 50%; border-radius: 50%; background-color: #cd2022; }
Das Ergebnis sollte jetzt folgendermaßen aussehen:
Als nächstes fügen wir den zweiten Kreis hinzu. Hierfür verwenden wir nun das CSS Pseudo Element :after. Wir nehmen erneut die Höhe und Breite des Quadrates. Diesen Kreis verschieben wir allerdings um die Hälfte der Höhe nach oben.
Beispielcode CSS3:
.herzform { position: absolute; left: 200px; top: 150px; width: 200px; height: 200px; background-color: #cd2022; } .herzform:before{ position: absolute; bottom: 0; left: -100px; width: 200px; height: 200px; content: ''; -webkit-border-radius: 50%; -moz-border-radius: 50%; -o-border-radius: 50%; border-radius: 50%; background-color: #cd2022; } .herzform:after { position: absolute; top: -100px; left: 0; width: 200px; height: 200px; content: ''; -webkit-border-radius: 50%; -moz-border-radius: 50%; -o-border-radius: 50%; border-radius: 50%; background-color: #cd2022; }
Da das CSS der beiden Kreise eigentlich fast identisch ist, fassen wir das ganze ein wenig zusammen:
Beispielcode CSS3:
.herzform { position: absolute; left: 200px; top: 150px; width: 200px; height: 200px; background-color: #cd2022; } .herzform:before, .herzform:after { position: absolute; width: 200px; height: 200px; content: ''; -webkit-border-radius: 50%; -moz-border-radius: 50%; -o-border-radius: 50%; border-radius: 50%; background-color: #cd2022; } .herzform:before { top: 0; left: -100px; } .herzform:after { top: -100px; left: 0; }
Jetzt sieht die Herzform schon ganz gut aus. Allerdings liegt sie auf der Seite.
Wir müssen sie nur noch drehen:
Beispielcode CSS3:
.herzform { position: absolute; left: 200px; top: 150px; width: 200px; height: 200px; background-color: #cd2022; } .herzform:before, .herzform:after { position: absolute; width: 200px; height: 200px; content: ''; -webkit-border-radius: 50%; -moz-border-radius: 50%; -o-border-radius: 50%; border-radius: 50%; background-color: #cd2022; } .herzform:before { top: 0; left: -100px; } .herzform:after { top: -100px; left: 0; } .herzform { -webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); }
Das Endergebnis sieht nun folgendermaßen aus:
Und hier dazu noch der Codepen:
See the Pen CSS3 Herzform by Andreas Lang (@sphinxflash) on CodePen.

Author: Andreas Lang
Andreas Lang hat im Alter von 12 Jahren begonnen, auf einem Atari ST 1040 STFM in Omikron und STOS Basic zu programmieren.
Spiele interessierten ihn nicht so sehr.
Die Welt der Bits und Bytes hat ihn gefangen.
Programmierertechnisch folgten auf dem ersten 486er Turbo Pascal, Visual Basic.
Mit dem ersten Internet Anschluss per 56k Modem folgten HTML, Javascript, CSS und Macromedia Flash.
Die Website www.wizzquiz.de wurde geboren.
Eine Flash Online-Gaming Plattform mit Quiz Spielen, Memory, Sokoban etc.
Später entwickelte er Software unter anderem für Continentale und Siemens AG.
Seit zwei Jahrzehnten konzentriert er sich auf die Webentwicklung und Webdesign mit dem Schwerpunkt PHP, Laravel und Javascript und betreut seine Kunden mit Herz und Seele in allen Bereichen von Entwicklung, Design, Suchmaschinenoptimierung, IT-Recht, IT-Sicherheit etc.