Wie erstelle ich mit CSS einen Spotlight-Effekt? Der folgende Artikel wird das Implementierungsprinzip analysieren und den Implementierungscode des CSS-Spotlight-Effekts teilen. Ich hoffe, er wird für alle hilfreich sein!
Das Implementierungsprinzip des CSS-Spotlight-Effekts ist sehr einfach:
- Überlappen Sie die beiden Texte vollständig, die innere Ebene ist dunkelgrau und die äußere Ebene hat einen Farbverlauf. [Empfohlenes Lernen: CSS-Video-Tutorial]
- Wenden Sie eine kreisförmige Maske auf den äußeren Text an.
- Fügen Sie am Ende
CSS-Animation
hinzu.CSS Animation
。
技术支持
引用到的CSS属性有:
实现
为了将HTML结构保持简洁,之后会使用 伪类元素 去制作。
HTML代码如下:
<h1 id="我想藏在罐头里">我想藏在罐头里</h1>
注意:
attr()
理论上能用于所有的CSS属性但目前支持的仅有伪元素的content
属性,其他的属性和高级特性目前是实验性的译者注:如果发现浏览器兼容表里attr()的高级用法依旧没有良好的支持的话,本文大部分内容都是纸上谈兵
引用 MDN文档
CSS代码如下:
*{ margin: 0; padding: 0; } :root{ --ellipse: 6.25rem; } html, body{ display: flex; justify-content: center; align-items: center; height: 100vh; background: #222; } h1{ font-size: 4rem; color: #333; width: 37.5rem; position: relative; } h1::after{ /* attr(attribute_name) */ content:attr(data-text); position: absolute; top: 0; left: 0; color: pink; clip-path: ellipse(var(--ellipse) var(--ellipse) at 0% 50%); animation: move 5s infinite; } @keyframes move{ 0%, 100%{ clip-path: ellipse(var(--ellipse) var(--ellipse) at 0% 50%); } 50%{ clip-path: ellipse(var(--ellipse) var(--ellipse) at 100% 50%); } }
实现效果如下:
现在动态的聚光灯效果就完成了。
但是还有问题,不知道细心的小伙伴发现了没有,制作成品的文字是 彩色
的,原理就是加上背景图片,然后将文字作为遮罩,最后把color
改成透明,所以我们要修改一下代码。
在 h1:after
中新增代码 background-image
和 background-clip
:
h1::after{ /* 别忘记修改color为透明 */ color: transparent; background-image: linear-gradient(to left,#1a2a6c,#b21f1f,#fdbb2d); background-clip: text; /* 因为background-clip是预览阶段的css属性,要加上一个前缀版本 */ -webkit-background-clip: text; }
看一下最终的完成效果:
演示的源代码在这里 CodePen 链接:
https://codepen.io/jackbrens/pen/MWrGNed
总结
以上就是本次分享的全部内容~~
如果觉得文章写得不错,对你有所启发的,请不要吝啬 点个 赞
和 关注
并在 评论区
Technischer Support
Die genannten CSS-Eigenschaften sind: 🎜🎜background-image🎜🎜🎜Hintergrundclip 🎜 🎜🎜clip-path🎜🎜Implementierung
🎜Um die HTML-Struktur einfach zu halten, werden später Pseudoklassenelemente verwendet. 🎜🎜HTML-Code lautet wie folgt: 🎜rrreee🎜Hinweis:🎜CSS-Code lautet wie folgt:🎜rrreee🎜Der Implementierungseffekt ist wie folgt:🎜🎜attr()
kann theoretisch für alle CSS-Attribute verwendet werden, unterstützt derzeit jedoch nur Pseudoelementecontent 🎜 Attribute, andere Attribute und erweiterte Funktionen sind derzeit experimentell. 🎜🎜Anmerkung des Übersetzers: Wenn Sie feststellen, dass die erweiterte Verwendung von attr() in der Browserkompatibilitätstabelle immer noch nicht gut unterstützt wird, ist der Großteil des Inhalts dieses Artikels aktiviert Papier 🎜🎜Zitat <a href="https://developer.mozilla.org/zh-CN/docs/Web/CSS/attr" target="_blank" rel="nofollow noopener noreferrer" ref="nofollow noopener noreferrer">MDN-Dokument🎜🎜</a>

Farbe
. Das Prinzip besteht darin, ein Hintergrundbild hinzuzufügen Maske, und schließlich wird color
in transparent geändert, sodass wir den Code ändern müssen. 🎜🎜Fügen Sie die Codes background-image
und background-clip
in h1:after
hinzu: 🎜rrreee🎜Sehen Sie sich den Endeffekt an: 🎜 🎜🎜🎜Die Der Quellcode der Demo ist hier CodePen-Link: 🎜🎜https://codepen.io/jackbrens/pen/MWrGNed🎜
Zusammenfassung
🎜Das ist es Der gesamte Inhalt wurde dieses Mal geteilt~~🎜🎜Wenn Sie der Meinung sind, dass der Artikel gut geschrieben ist und Sie inspiriert hat, zögern Sie bitte nicht, aufGefällt mir
und Folgen
zu klicken und eine Nachricht zu hinterlassen Kommentieren Sie im Kommentarbereich
Hinterlassen Sie Ihre wertvolle Meinung~~🎜🎜 (Teilen von Lernvideos: 🎜Web-Frontend🎜)🎜Das obige ist der detaillierte Inhalt vonSo erstellen Sie einen Spotlight-Effekt mit CSS (Code im Anhang). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Das React -Ökosystem bietet uns viele Bibliotheken, die alle auf die Interaktion von Drag & Drop konzentrieren. Wir haben React-Dnd, React-beautiful-dnd,

In letzter Zeit gab es einige wunderbar miteinander verbundene Dinge über schnelle Software.

Ich kann nicht sagen, dass ich das all das oft im Hintergrund-Clip verwende. I ' D Wette It ' wird in der täglichen CSS-Arbeit kaum jemals verwendet. Aber ich wurde in einem Posten von Stefan Judis daran erinnert,

Die Animation mit RequestAnimationFrame sollte einfach sein, aber wenn Sie die Dokumentation von React nicht gründlich gelesen haben, werden Sie wahrscheinlich auf ein paar Dinge stoßen

Vielleicht ist der einfachste Weg, dies dem Benutzer anzubieten, ein Link, der auf eine ID auf das Element abzielt. Also wie ...

Hören Sie, ich bin kein GraphQL -Experte, aber ich arbeite gerne damit. Die Art und Weise, wie es mir Daten als Front-End-Entwickler vorstellt, ist ziemlich cool. Es ist wie ein Menü von

In der Roundup in dieser Woche, einem praktischen Lesezeichen für die Inspektion von Typografie, unter Verwendung dessen, wie sich JavaScript -Module gegenseitig importieren, sowie Facebook ' s.

I ' Ich habe kürzlich eine interessante Änderung auf Codepen bemerkt: Als es ein Rechteck mit abgerundeten Ecken auf der Homepage schwebt, expandieren Sie sich im Rücken.


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

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

ZendStudio 13.5.1 Mac
Leistungsstarke integrierte PHP-Entwicklungsumgebung

VSCode Windows 64-Bit-Download
Ein kostenloser und leistungsstarker IDE-Editor von Microsoft

MantisBT
Mantis ist ein einfach zu implementierendes webbasiertes Tool zur Fehlerverfolgung, das die Fehlerverfolgung von Produkten unterstützen soll. Es erfordert PHP, MySQL und einen Webserver. Schauen Sie sich unsere Demo- und Hosting-Services an.

SecLists
SecLists ist der ultimative Begleiter für Sicherheitstester. Dabei handelt es sich um eine Sammlung verschiedener Arten von Listen, die häufig bei Sicherheitsbewertungen verwendet werden, an einem Ort. SecLists trägt dazu bei, Sicherheitstests effizienter und produktiver zu gestalten, indem es bequem alle Listen bereitstellt, die ein Sicherheitstester benötigen könnte. Zu den Listentypen gehören Benutzernamen, Passwörter, URLs, Fuzzing-Payloads, Muster für vertrauliche Daten, Web-Shells und mehr. Der Tester kann dieses Repository einfach auf einen neuen Testcomputer übertragen und hat dann Zugriff auf alle Arten von Listen, die er benötigt.