Wir sehen oft einen coolen Effekt, wenn die Maus über einen Bereich schwebt und der Bereich eine gepunktete Rahmen- und Linienanimation anzeigt. Wie wird dieser Effekt erzielt? Dieser Artikel bietet Ihnen mehrere Ideen als Referenz. Grundlegendes HTML <div Klasse="Box"> <p>Testtest</p> </div> Der einfache Weg Dies geschieht mit einem Hintergrundbild. p muss vertikal zentriert sein. Wissen Sie noch, wie man es vertikal zentriert? Weitere Einzelheiten finden Sie in einem anderen Blog ~ .Kasten { Breite: 100px; Höhe: 100px; Position: relativ; Hintergrund: URL (upload/2022/web/selection.gif); P { Position: absolut; links: 0; oben: 0; rechts: 0; unten: 0; Rand: automatisch; Höhe: berechnet (100 % – 2 Pixel); Breite: berechnet (100 % – 2 Pixel); Hintergrundfarbe: #fff; } } sich wiederholender linearer Farbverlauf 135 Grad wiederholter linearer Farbverlauf, p erweitert die Höhe und der weiße Hintergrund deckt den äußeren Div-Farbverlauf ab. .Kasten { Breite: 100px; Höhe: 100px; Hintergrund: sich wiederholender linearer Farbverlauf ( 135 Grad, transparent, transparent 4px, #000 4px, #000 8px ); Überlauf: versteckt; // Einen neuen BFC erstellen, um das Problem des Randzusammenbruchs in der vertikalen Richtung zu lösen. Animation: 1 Sekunde unendlich linear bewegen. P { Höhe: berechnet (100 % – 2 Pixel); Rand: 1px; Hintergrundfarbe: #fff; } } @keyframes verschieben { aus { Hintergrundposition: -1px; } Zu { Hintergrundposition: -12px; } } linearer Farbverlauf und Hintergrund Zeichnen Sie mit einem linearen Farbverlauf und der Hintergrundgröße eine gepunktete Linie und verschieben Sie sie dann mit der Hintergrundposition auf die vier Seiten. Der Vorteil dieser Methode besteht darin, dass Sie die Stile der vier Kanten und die Richtung der Animation separat festlegen können. Aufmerksame Schüler sollten feststellen, dass die Animation der vorherigen Methode weder im Uhrzeigersinn noch gegen den Uhrzeigersinn erfolgt. .Kasten { Breite: 100px; Höhe: 100px; Hintergrund: linearer Farbverlauf (0 Grad, transparent 6px, #e60a0a 6px) Wiederholung-y, linearer Farbverlauf (0 Grad, transparent 50 %, #0f0ae8 0) Wiederholung-y, linearer Farbverlauf (90 Grad, transparent 50 %, #09f32f 0) repeat-x, linearer Farbverlauf (90 Grad, transparent 50 %, #fad648 0) repeat-x; Hintergrundgröße: 1px 12px, 1px 12px, 12px 1px, 12px 1px; Hintergrundposition: 0 0, 100 % 0, 0 0, 0 100 %; Animation: Bewegung2 1s unendlich linear; P { Rand: 1px; } } @keyframes verschieben2 { aus { } Zu { Hintergrundposition: 0 -12px, 100 % 12px, 12px 0, -12px 100 %; } } linearer Farbverlauf und Maske Die Spezifikation des Maskenattributs wurde in die Liste der empfohlenen Spezifikationen aufgenommen. Es ist eine ausgemachte Sache, dass sie in Zukunft in die etablierten Spezifikationen und Standards aufgenommen wird. Sie können sie mit Zuversicht studieren, da sie in Zukunft nützlich sein wird. Hier kann auch eine Maske verwendet werden, um dieselbe Animation zu erzielen, und es kann auch der Effekt einer gepunkteten Rahmenfarbe mit Farbverlauf erzielt werden. Der Unterschied zum Hintergrund besteht darin, dass die Maske in der Mitte eine undurchsichtige Maske haben muss, da sonst der Inhalt des p-Elements abgedeckt wird. .Kasten { Breite: 100px; Höhe: 100px; Hintergrund: linearer Farbverlauf (0 Grad, #f0e, #fe0); -webkit-mask: linearer Farbverlauf (0 Grad, transparent 6px, #e60a0a 6px) Wiederholung-y, linearer Farbverlauf (0 Grad, transparent 50 %, #0f0ae8 0) Wiederholung-y, linearer Farbverlauf (90 Grad, transparent 50 %, #09f32f 0) repeat-x, linearer Farbverlauf (90 Grad, transparent 50 %, #fad648 0) repeat-x, linear-gradient(0deg, #fff, #fff) no-repeat; // Sie können hier jede undurchsichtige Farbe verwenden -webkit-mask-size: 1px 12px, 1px 12px, 12px 1px, 12px 1px, 98px 98px; -webkit-mask-position: 0 0, 100 % 0, 0 0, 0 100 %, 1px 1px; Überlauf: versteckt; Animation: Bewegung3 1s unendlich linear; P { Höhe: berechnet (100 % – 2 Pixel); Rand: 1px; Hintergrundfarbe: #fff; } } @keyframes move3 { aus { } Zu { -webkit-mask-position: 0 -12px, 100 % 12px, 12px 0, -12px 100 %, 1px 1px; } } Klicken Sie hier für die Demo Zusammenfassen Oben sehen Sie den CSS-Beispielcode, um den vom Editor eingeführten gepunkteten Rand-Scrolleffekt zu erzielen. Ich hoffe, er ist für alle hilfreich. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und der Editor wird Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken! |
<<: Eine kurze Einführung in Web2.0-Produkte und -Funktionen
>>: So implementieren Sie die Vue-Bindungsklasse und den Inline-Bindungsstil
Die Version von vsCode wurde in den letzten Tagen...
Verständnis des Diff-Algorithmus in React diff -A...
Zusammenfassung: MySQL bietet eine Vielzahl von S...
In der Entwicklungsumgebung wird das Vue-Projekt ...
Um es zusammenzufassen: „Nur lesen“ ist nur für Ei...
Aus Langeweile habe ich ein paar einfache Übungen...
Der Vorgang zur vollständigen Deinstallation der ...
Kürzlich habe ich im Internet den Artikel „Build ...
In diesem Artikel wird der spezifische Code für J...
Dieser Artikel beschreibt die MySQL-Integritätsbe...
Um das Kursdesign zu realisieren, habe ich kürzli...
Methode 1: var a = [1,2,3]; var b=[4,5] a = a.con...
Bei der Onlinesuche nach Methoden zur Installatio...
Körperteil: <button>Licht ein-/ausschalten&...
1. Einleitung Ich werde hier nicht näher auf Apol...