So verwenden Sie border-image, um Beispielcode für Textblasenränder zu implementieren

So verwenden Sie border-image, um Beispielcode für Textblasenränder zu implementieren

Während der Entwicklungstätigkeit bin ich auf einen sehr einfachen Textblaseneffekt gestoßen, der ungefähr so ​​aussieht.

Ähm, es sieht einfach aus. Die Umsetzungsidee ist wie folgt

  • Der Hauptteil ist ein Div, fügen Sie einfach Farbverlauf, Rahmen und abgerundete Ecken hinzu.
  • Der Barren schneidet das Bild links und verwendet ::before, um es links zu positionieren.
  • Die Maus schneidet das Bild auf der rechten Seite aus und positioniert es mit ::after auf der rechten Seite.

Es ist grundsätzlich nicht schwierig und in wenigen Minuten erledigt. bis...

Produkt: Ach ja, dieses Bubble Chart wird später im Hintergrund konfigurierbar gemacht. Dann können wir einfach das Bild hochladen, das dann als persönliche Signatur des Benutzers gilt. ICH:! ! ! (╯‵□′)╯︵┻━┻

Das ist etwas peinlich. Man kann nicht ein Vorher-Bild und ein Nachher-Bild von dem Produkt haben und dazwischen selbst den Farbverlauf schreiben. Ich schätze, ich werde jeden Moment zu Tode gehackt.

In meinen ersten Jahren bei der Arbeit hörte ich einen Android-Kollegen über etwas namens .9png sprechen und suchte daher online, ob das Frontend einen ähnlichen Effekt erzielen könnte. Und tatsächlich, ich habe es gefunden.

.9png

Was ist .9png? .9png ist ein Bildformat unter Android, das speziell für Blaseneffekte verwendet wird. Seine Besonderheit besteht darin, dass es ein Bild in 9 Teile unterteilt und die vier Eckbereiche nicht gestreckt werden. Es wird nur der Mittelteil gedehnt.

Auf diese Weise werden die in den Ecken verbleibenden Elemente nicht verformt, selbst wenn sich Ihr Inhaltsbereich erweitert.

Frontend-Implementierung

Kluge Schüler können direkt hier klicken, um den Effekt zu sehen https://codepen.io/gong12339/pen/PowxmzL

Die folgenden Attribute werden benötigt, um .9png auf dem Front-End zu implementieren.

Die offiziell empfohlene .9png-Bildauflösung beträgt 81 * 81, sodass jeder der 9 ausgeschnittenen Bereiche 27 * 27 in Breite und Höhe ist. Da mein Stück ein Rechteck ist, muss ich die Position der Scheiben selbst messen. Und mein Bild unterstützt offensichtlich keine vertikale Streckung

.Grenze {
  Rahmenbreite: 18px 44px 25px 28px;
  Rahmenstil: durchgezogen;
  Rahmenbildquelle:URL (https://raw.githubusercontent.com/gong12339/vic-blog/master/static/img/border.9.png);
  Rahmenbild-Slice: 25 44 25 28 füllen;
  Bildrahmenbreite: 25px 44px 25px 28px;
}
  • border-width: 27px; Rahmenbreite festlegen
  • border-style: solid; Legen Sie den Rahmentyp fest
  • Rahmenbildquelle: URL('a.png')
  • Stellen Sie die Bildadresse ein, nichts zu sagen
  • Rahmenbild-Ausschnitt: 27 27 27 27;
  • Legen Sie die Slice-Position fest (oben, rechts, unten, links). Wenn sie alle gleich sind, können Sie einfach eine schreiben.
  • Rahmenbildbreite: 27px 27px 27px 27px;
  • Legen Sie die Rahmenbreite fest (oben, rechts, unten, links). Wenn alle gleich sind, können Sie einfach einen schreiben

Hier konzentrieren wir uns auf border-image-slice , was bedeutet, dass wir im entsprechenden Abstand von der oberen, rechten, unteren und linken Seite des Bildes eine Linie zeichnen und das Bild dann in 9 Bereiche aufteilen (beachten Sie, dass Einheiten nicht eingeschlossen werden können).

An diesem Punkt haben wir die Konfiguration im Wesentlichen abgeschlossen

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

<<:  Vorteile von MySQL-Abdeckungsindizes

>>:  Analysieren Sie das Problem der automatischen Erkennung und Lese-/Schreibüberwachung von Zabbix 5.0-Festplatten

Artikel empfehlen

So installieren Sie Docker auf Raspberry Pi

Da Raspberry Pi auf der ARM-Architektur basiert, ...

So installieren Sie MySQL unter Linux (Yum und Quellcode-Kompilierung)

Es gibt zwei Möglichkeiten, MySQL unter Linux zu ...

So verwenden Sie das JQuery-Editor-Plugin tinyMCE

Ändern Sie die vereinfachte Dateigröße und laden ...

Schnelle und sichere Methode zum Umbenennen einer MySQL-Datenbank (3 Arten)

Inhaltsverzeichnis So benennen Sie eine MySQL-Dat...

Verwendung des Linux-Befehls usermod

1. Befehlseinführung Der Befehl usermod (user mod...

Instanzmethode für MySQL-String-Verkettung und Festlegen von Nullwerten

#String-Verkettung concat(s1,s2); verkette die St...

Der Unterschied zwischen absolutem und relativem Pfad bei der Webseitenerstellung

1. Absoluter Pfad Zunächst einmal bezieht sich de...

Detaillierte Erklärung der HTML-Formularelemente (Teil 1)

HTML-Formulare werden verwendet, um verschiedene ...

Detaillierte Erklärung der HTML-Dokumenttypen

Meines ist: <!DOCTYPE html> Blog-Garten: &l...

Zwei Möglichkeiten zur Verwendung von React in React HTML

Grundlegende Verwendung <!DOCTYPE html> <...

So installieren Sie den Zookeeper-Dienst auf einem Linux-System

1. Erstellen Sie den Ordner /usr/local/services/z...

Verwenden Sie three.js, um coole 3D-Seiteneffekte im Acid-Stil zu erzielen

In diesem Artikel wird hauptsächlich die Verwendu...