Eine Sammlung von Button-Hover-Rand- und Hintergrundanimationen basierend auf CSS-Eigenschaften

Eine Sammlung von Button-Hover-Rand- und Hintergrundanimationen basierend auf CSS-Eigenschaften

Herzattribute

opacity: .999 erstellt einen Stapelkontext für das Element, sodass die Animationen der Schaltflächen 6 und 8 nicht durch den Hintergrund verdeckt werden

left/top: -1px bewirkt, dass das Pseudoelement mit der Buttonposition übereinstimmt, der Grund ist folgender

Übergangsverzögerung Die horizontalen und vertikalen Randanimationen erzeugen einen subtilen Verzögerungseffekt

z-index: -1 verhindert, dass der von der Animation generierte Farbblock den Buttontext überdeckt

Das absolute Element mit den festgelegten Werten links/oben/rechts/unten wird relativ zur Polsterungsbox des übergeordneten Elements positioniert. Daher muss das Pseudoelement hier um eine Randdistanz verschoben werden, um mit der Position der Schaltfläche übereinzustimmen. Andernfalls tritt der folgende Effekt ein:


Sie können sehen, dass zwischen dem grünen Rand und dem grauen Rand ein Abstand von 1px besteht

<div Klasse="Hauptcontainer">
<Abschnitt>
<button class="btn btn-green btn-border-o">Schaltfläche 1</button>
<button class="btn btn-blue btn-border">Schaltfläche 2</button>
<button class="btn btn-purple btn-border-rev-o">Knopf Drei</button>
<button class="btn btn-navy btn-border-rev">Schaltfläche 4</button>
</Abschnitt>
<Abschnitt>
<button class="btn btn-orange btn-fill-vert-o">Schaltfläche Fünf</button>
<button class="btn btn-red btn-fill-vert">Schaltfläche 6</button>
<button class="btn btn-green btn-fill-horz-o">Schaltfläche 7</button>
<button class="btn btn-blue btn-fill-horz">Knopf Acht</button>
</Abschnitt>
</div>
*, *:vor, *:nach {
Übergang: alle 0,3 s;
}
Abschnitt {
Position: relativ;
Polsterung: 5px 0 5px;
Textausrichtung: zentriert;
}
.btn {
Position: relativ;
Anzeige: Inline-Block;
Zeilenhöhe: 35px;
Rand: 8px;
Polsterung: 0 15px;
Schriftgröße: 15px;
Rahmenradius: 3px;
Deckkraft: .999;
Cursor: Zeiger;
}
.btn-border-o {
Hintergrundfarbe: transparent;
Rand: 1px durchgezogen #d0d0d0;
Farbe: #B8B8B8;
}
.btn-border-o:vorher, .btn-border-o:nachher {
Inhalt: '';
Position: absolut;
Rahmenstil: durchgezogen;
Rahmenradius: 3px;
Box-Größe: Inhaltsbox;
}
.btn-border-o:vor {
links: 0;
oben: -1px;
Breite: 0;
Höhe: 100%;
Rahmenbreite: 1px 0 1px 0;
Übergangsverzögerung: 0,05 s;
}
.btn-border-o:nach {
oben: 0;
links: -1px;
Breite: 100 %;
Höhe: 0;
Rahmenbreite: 0 1px 0 1px;
}
.btn-border-o:hover:vor {
Breite: 100 %;
}
.btn-border-o:hover:nach {
Höhe: 100%;
}
.btn-border-o.btn-green:vorher, .btn-border-o.btn-green:nachher {
Rahmenfarbe: #2ecc71;
}
.btn-border-o.btn-green:hover {
Farbe: #2ecc71;
}
.btn-Grenze {
Hintergrundfarbe: #e5e5e5;
Rand: 1px durchgezogen #e5e5e5;
Farbe: #a6a6a6;
}
.btn-border:vorher, .btn-border:nachher {
Position: absolut;
Inhalt: '';
Rahmenstil: durchgezogen;
Rahmenradius: 3px;
Box-Größe: Inhaltsbox;
}
.btn-border:vor {
oben: -1px;
links: 0;
Breite: 0;
Höhe: 100%;
Rahmenbreite: 1px 0 1px 0;
Übergangsverzögerung: 0,05 s;
}
.btn-border:nach {
oben: 0;
links: -1px;
Breite: 100 %;
Höhe: 0;
Rahmenbreite: 0 1px 0 1px;
}
.btn-border:hover {
Hintergrundfarbe: transparent;
}
.btn-border:hover:vor {
Breite: 100 %;
}
.btn-border:hover:nach {
Höhe: 100%;
}
.btn-border.btn-blue:vorher, .btn-border.btn-blue:nachher {
Rahmenfarbe: #3498db;
}
.btn-border.btn-blue:hover {
Farbe: #3498db;
}
.btn-border-rev-o {
Hintergrundfarbe: transparent;
Rand: 1px durchgezogen #d0d0d0;
Farbe: #B8B8B8;
}
.btn-border-rev-o:vorher, .btn-border-rev-o:nachher {
Inhalt: '';
Position: absolut;
Rahmenstil: durchgezogen;
Rahmenradius: 3px;
Box-Größe: Inhaltsbox;
}
.btn-border-rev-o:vor {
oben: -1px;
rechts: 0;
Breite: 0;
Höhe: 100%;
Rahmenbreite: 1px 0 1px 0;
Übergangsverzögerung: 0,05 s;
}
.btn-border-rev-o:nach {
links: -1px;
unten: 0;
Breite: 100 %;
Höhe: 0;
Rahmenbreite: 0 1px 0 1px;
}
.btn-border-rev-o:hover:vor {
Breite: 100 %;
}
.btn-border-rev-o:hover:nach {
Höhe: 100%;
}
.btn-border-rev-o.btn-purple:vorher, .btn-border-rev-o.btn-purple:nachher {
Rahmenfarbe: #9b59b6;
}
.btn-border-rev-o.btn-purple:hover {
Farbe: #9b59b6;
}
.btn-border-rev {
Hintergrundfarbe: #e5e5e5;
Rand: 1px durchgezogen #e5e5e5;
Farbe: #a6a6a6;
}
.btn-border-rev:vorher, .btn-border-rev:nachher {
Inhalt: '';
Position: absolut;
Rahmenstil: durchgezogen;
Rahmenradius: 3px;
Box-Größe: Inhaltsbox;
}
.btn-border-rev:vor {
oben: -1px;
rechts: 0;
Breite: 0;
Höhe: 100%;
Rahmenbreite: 1px 0 1px 0;
}
.btn-border-rev:nach {
unten: 0;
links: -1px;
Breite: 100 %;
Höhe: 0;
Rahmenbreite: 0 1px 0 1px;
Übergangsverzögerung: 0,05 s;
}
.btn-border-rev:hover {
Hintergrundfarbe: transparent;
}
.btn-border-rev:hover:vor {
Breite: 100 %;
}
.btn-border-rev:hover:nach {
Höhe: 100%;
}
.btn-border-rev.btn-navy:vorher, .btn-border-rev.btn-navy:nachher {
Rahmenfarbe: #34495e;
}
.btn-border-rev.btn-navy:hover {
Farbe: #34495e;
}
.btn-fill-vert-o {
Hintergrundfarbe: transparent;
Rand: 1px durchgezogen #d0d0d0;
Farbe: #B8B8B8;
Überlauf: versteckt;
}
.btn-fill-vert-o:vorher, .btn-fill-vert-o:nachher {
Inhalt: '';
Position: absolut;
links: 0;
Breite: 100 %;
Höhe: 0;
Deckkraft: 0;
z-Index: -1;
}
.btn-fill-vert-o:vor {
oben: 50 %;
}
.btn-fill-vert-o:nach {
unten: 50 %;
}
.btn-fill-vert-o:hover {
Farbe: #fff;
}
.btn-fill-vert-o:hover:vorher, .btn-fill-vert-o:hover:nachher {
Höhe: 50%;
Deckkraft: 1;
}
.btn-fill-vert-o.btn-orange:vorher, .btn-fill-vert-o.btn-orange:nachher {
Hintergrundfarbe: #e67e22;
}
.btn-fill-vert-o.btn-orange:hover {
Rahmenfarbe: #e67e22;
}
.btn-fill-vert {
Hintergrundfarbe: #e5e5e5;
Rand: 1px durchgezogen #e5e5e5;
Farbe: #a6a6a6;
Überlauf: versteckt;
}
.btn-fill-vert:vorher, .btn-fill-vert:nachher {
Inhalt: '';
Position: absolut;
Breite: 100 %;
Höhe: 0;
Deckkraft: 0;
links: 0;
z-Index: -1;
}
.btn-fill-vert:vor {
oben: 50 %;
}
.btn-fill-vert:nach {
unten: 50 %;
}
.btn-fill-vert:hover {
Farbe: #fff;
}
.btn-fill-vert:hover:vorher, .btn-fill-vert:hover:nachher {
Höhe: 50%;
Deckkraft: 1;
}
.btn-fill-vert.btn-red:vorher, .btn-fill-vert.btn-red:nachher {
Hintergrundfarbe: #e74c3c;
}
.btn-fill-vert.btn-red:hover {
Rahmenfarbe: #e74c3c;
}
.btn-fill-horz-o {
Hintergrundfarbe: transparent;
Rand: 1px durchgezogen #d0d0d0;
Farbe: #B8B8B8;
Überlauf: versteckt;
}
.btn-fill-horz-o:vorher, .btn-fill-horz-o:nachher {
Inhalt: '';
Position: absolut;
oben: 0;
Breite: 0;
Höhe: 100%;
Deckkraft: 0;
z-Index: -1;
}
.btn-fill-horz-o:vor {
links: 50%;
}
.btn-fill-horz-o:nach {
rechts: 50%;
}
.btn-fill-horz-o:hover {
Farbe: #fff;
}
.btn-fill-horz-o:hover:vorher, .btn-fill-horz-o:hover:nachher {
Breite: 50%;
Deckkraft: 1;
}
.btn-fill-horz-o.btn-green:vorher, .btn-fill-horz-o.btn-green:nachher {
Hintergrundfarbe: #2ecc71;
}
.btn-fill-horz-o.btn-green:hover {
Rahmenfarbe: #2ecc71;
}
.btn-fill-horz {
Hintergrundfarbe: #e5e5e5;
Rand: 1px durchgezogen #e5e5e5;
Farbe: #a6a6a6;
Überlauf: versteckt;
}
.btn-fill-horz:vorher, .btn-fill-horz:nachher {
Inhalt: '';
Position: absolut;
oben: 0;
Breite: 0;
Höhe: 100%;
Deckkraft: 0;
z-Index: -1;
}
.btn-fill-horz:vor {
links: 50%;
}
.btn-fill-horz:nach {
rechts: 50%;
}
.btn-fill-horz:hover {
Farbe: #fff;
}
.btn-fill-horz:hover:vorher, .btn-fill-horz:hover:nachher {
Breite: 50%;
Deckkraft: 1;
}
.btn-fill-horz.btn-blue:vorher, .btn-fill-horz.btn-blue:nachher {
Hintergrundfarbe: #3498db;
}
.btn-fill-horz.btn-blue:hover {
Rahmenfarbe: #3498db;
}

Zusammenfassen

Oben finden Sie eine Sammlung von Button-Hover-Rändern und Hintergrundanimationen basierend auf CSS-Eigenschaften, die ich Ihnen vorgestellt habe. Ich hoffe, dass sie Ihnen hilfreich sein werden. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und ich werde Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken!
Wenn Sie diesen Artikel hilfreich finden, können Sie ihn gerne abdrucken und dabei bitte die Quelle angeben. Vielen Dank!

<<:  Ursachen und Lösungen für den MySQL-Fehler „zu viele Verbindungen“

>>:  So führen Sie den Betrieb nach dem Verlassen des Docker-Containers weiter aus

Artikel empfehlen

HTML-Cellpadding- und Cellspacing-Attribute in Bildern erklärt

Zelle -- der Inhalt der Tabelle Zellenrand (Tabell...

Eine dauerhafte Lösung für MySQLs Unfähigkeit, Chinesisch zu erkennen

In den meisten Fällen unterstützt MySQL Chinesisc...

HTML-Tutorial: Sammlung häufig verwendeter HTML-Tags (6)

Verwandte Artikel: Anfänger lernen einige HTML-Ta...

So ändern Sie die Länge eines Eingabetextfelds entsprechend seinem Inhalt

Erste: Code kopieren Der Code lautet wie folgt: &l...

So implementieren Sie das Strategiemuster in Javascript

Inhaltsverzeichnis Überblick Code-Implementierung...

CentOS8 - bash: verstümmelte Zeichen und Lösungen

Diese Situation tritt normalerweise auf, weil das...

Ubuntu16.04 Installation mysql5.7.22 Grafik-Tutorial

Installations-Tutorial für VMware12.0+Ubuntu16.04...

Eine kurze Erläuterung der $notify-Punkte des Elements

Meine ursprüngliche Absicht war, die $notify-Bena...

Eine kurze Einführung in den allgemeinen Prozess der Web-Frontend-Webentwicklung

Ich sehe viele Anfänger in der Front-End-Entwicklu...

Der Unterschied zwischen Datenzeit und Zeitstempel in MySQL

In MySQL gibt es drei Datumstypen: Datum (Jahr-Mo...

MySQL 8.x MSI-Version Installations-Tutorial mit Bildern und Text

1. MySQL herunterladen Offizielle Website-Downloa...

Implementierung der CentOS8.0-Netzwerkkonfiguration

1. Unterschiede in der Netzwerkkonfiguration zwis...

Vue verwendet drei Methoden zum Aktualisieren der Seite

Beim Schreiben von Projekten stoßen wir häufig au...

Analyse der Verwendung des Linux-Schwachstellen-Scan-Tools lynis

Vorwort: Lynis ist ein Sicherheitsprüfungs- und H...

CentOS 7-Konfiguration Tomcat9+MySQL-Lösung

Tomcat konfigurieren Installieren Sie zuerst Tomc...