


Implementierung von benutzerdefinierten CSS-Eigenschaften und Spotlight-Effekten (Code)
In diesem Artikel geht es um die Implementierung (Code) von benutzerdefinierten CSS-Attributen und Spotlight-Effekten. Ich hoffe, dass er für Freunde hilfreich ist.
Einführung
CSS-Variablen, eine Sache, die nicht so neu ist, aber definitiv eine Revolution für CSS darstellt.
Bei der vorherigen Verwendung von Variablen mussten wir Vorverarbeitungstools wie Sass und Less verwenden. Jetzt können wir CSS direkt zum Deklarieren von Variablen verwenden.
Kompatibilität
Alte Regeln, schauen wir uns zuerst die Kompatibilität an
Kompatibilität ist grün, rot nicht gibt es noch zwei? Wie kann man sich bei großen Dingen an kleine Details halten? Die
-Syntax ist etwas hässlich, aber sehr einfach.
wird zum Deklarieren von Variablennamen verwendet. Vielleicht möchten Sie fragen, warum stattdessen verwendet wird von --*
Was die Klasse betrifft, werden Sass und Less nicht dafür verwendet? var(--*)
--
$
Die Deklaration und Verwendung muss im {}-Codeblock platziert werden
body{ --bg-color: lightblue; background-color: var(--bg-color); }
Der Code ist sehr einfach, man kann den Effekt direkt sehen, daher werde ich nicht auf Details eingehen.
-Codeblock deklarierten Variablen sind globale Variablen, und lokale Variablen überschreiben globale Variablen
:root{ --bg-color: red; } body{ --bg-color: lightblue; background-color: var(--bg-color); }
Die letzte, die benötigt wird Wirkung ist:root
, der Wert der
--bg-color: lightblue
bg-color
zum Standardwert der Variablen lightblue
, wenn die Variable ist nicht definiert, der letztere Wert wird verwendet. Schauen Sie sich das folgende Beispiel an:
body{ --1: red; color:var(--2, blue); }
Der obige Code sucht nach der Variablen var( [, ]? )
im Bereich von
body
, unsere Variablennamen verwenden nicht nur Zahlen, sondern auch auch chinesische Schriftzeichen sind akzeptabel. --2
:root{ --bg-color: lightblue; --文字颜色: white; --fong-size: 30; } body{ background-color: var(--bg-color); } div{ color: var(--文字颜色); font-size: var(--fong-size)px; }Wie groß ist der Text in p derzeit? Es ist die Standardgröße des Browsers. Das liegt daran, dass am Ende ein Leerzeichen steht, wenn . Wir können die Variable ehrlich deklarieren
--fong-size: 30px;
var(--fong-size)px
oder 30 px
berechnetes Attribut font-size: calc(var(--fong-size) * 1px);
calc()
js verwenden Erfassung und ZuweisungWir können js verwenden, um CSS-Variablen abzurufen und zuzuweisen. Schauen Sie, das ist so praktisch, altes Eisen.
:root{ --bg-color: lightblue; } // 获取 getComputedStyle(document.documentElement).getPropertyValue('--bg-color') // lightblue // 赋值 document.documentElement.style.setProperty('--bg-color', 'yellowgreen')Einfache Anwendung Oben haben wir die Deklaration und Verwendung von CSS-Variablen sowie die Verwendung von js zum Abrufen und Zuweisen von Werten eingeführt. Als nächstes haben wir einen Spotlight-Effekt abgeschlossen (ich habe ihn blind gemacht). Ich weiß nicht, wie es heißen soll.) Nein, es sieht so aus. Das GIF-Bild hängt etwas fest, bitte warten Sie ab und sehen Sie es sich an
Bevor wir den Code schreiben, klären wir die Ideen und wie dieser Effekt erzielt werden kann. Die wichtigsten sind wie folgt: Ein paar Schritte 1. Deklarieren Sie globale CSS-Variablen 2. Stellen Sie den Körper auf einen rein schwarzen Hintergrund ein, fügen Sie p hinzu und legen Sie das Hintergrundbild fest 3. Verwenden Sie
4. Fügen Sie Mausereignisse hinzu und ändern Sie dynamisch die CSS-Variable, die die Mittelposition des Kreises darstellt
Als Nächstes beginnen Sie mit dem Schreiben Code clip-path
Das Layout ist sehr einfach, es ist nur ein Div. Reden wir hauptsächlich über den CSS-Stil
:root{ --x: 40; --y: 40; } *{ padding: 0; margin: 0; } body{ width: 100vw; height: 100vh; background: #000; } div{ width: 100%; height: 100%; background: url('../images/bg.png') 0 0 no-repeat; clip-path: circle(100px at calc(var(--x) * 1px ) calc(var(--y) * 1px)); background-size: cover; }Verwenden Sie den Platzhalter
, um den Standardstil des Browsers einfach und grob zu entfernen Hier werden die Einheiten
undverwendet, was bedeutet, dass das Ansichtsfenster in 100 gleiche Teile unterteilt ist.
ist 100 % breit, auf die gleiche Weise . *
vw
Hier kommt der wichtige Punkt. Verwenden Sie CSS, um zwei Variablen vh
und 100vw
zu deklarieren, und verwenden Sie dann vh
beim Zuschneiden im
, um einen Kreis zuzuschneiden . Die Syntax von , und ändern Sie die Werte von --x
und --y
p
rrreeclip-path: circle(100px at calc(var(--x) * 1px ) calc(var(--y) * 1px))
An dieser Stelle verwenden wir CSS-Variablen, um einen einfachen Effekt zu erzielen. Es gibt bitte weitere Verwendungsszenarien für CSS-Variablen genießen Sie es. clip-path
小结
1、可以嵌套使用
:root{ --green: green; --bgcolor: var(--green); }
2、变量的不合法
div { --color: 10px; background-color: yellow; background-color: var(--color, green); }
此时p的背景色是什么呢?
A rgba(0,0,0,0) B 10px C yellow D green
答案是 A
简单来说是变量声明的时候不是合法的,背景色显然不能是10px
,所以浏览器就会使用默认值,这个默认值并不是使用变量的默认值,是浏览器自己的默认值background-color: var(--color, green)
就会变成background-color: rgba(0,0,0,0)
相关推荐:
Das obige ist der detaillierte Inhalt vonImplementierung von benutzerdefinierten CSS-Eigenschaften und Spotlight-Effekten (Code). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Es gab Neuigkeiten über Chrome, die ihre Benutzer-Agent-Zeichenfolge einfrieren (und alle anderen großen Browser sind an Bord). Das heißt, sie haben noch einen Benutzer-Agent (UA).

Immer wenn ein Browser Versionen aktualisiert, ist es ein kleines Marketing -Event und dies zu Recht. Sieht aus wie für Firefox it es ungefähr einmal im Monat, Chrome ist ~ 6 Wochen und ist

Angenommen, Sie haben ein zweispaliges Layout: eine Hauptspalte mit Inhalt und eine Seitenleiste. Sagen Sie, es hat viele Inhalte mit Abschnitten, die Scrollen erfordert. Die Seitenleiste

Die Vorteile der Verwendung von SVGs in der Webentwicklung sind bekannt. SVGs sind kleiner Größe, können ziemlich zugänglich gemacht werden, sind skalierbar, während sie ihre Pflege erhalten

Manchmal müssen wir ein wenig weiter als HTML, CSS und JavaScript gehen, um die von uns benötigte Benutzeroberfläche zu erstellen, und stattdessen andere Ressourcen wie SVG, WebGL, Leinwand, verwenden.

PHP -Vorlagen erhält oft einen schlechten Rap für die Erleichterung von unterdurchschnittlichem Code - aber das muss nicht der Fall sein. Schauen wir uns an, wie PHP -Projekte eine Basis durchsetzen können

Mit der Inline-Template-Anweisung können wir reichhaltige Vue-Komponenten als fortschreitende Verbesserung gegenüber vorhandenem WordPress-Markup erstellen.

Im Microsoft Edge -Team sind wir für ein offenes Web verpflichtet und helfen dabei, die Innovation voranzutreiben. Deshalb haben wir eine neue Initiative in gestartet


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SAP NetWeaver Server-Adapter für Eclipse
Integrieren Sie Eclipse mit dem SAP NetWeaver-Anwendungsserver.