Verwenden Sie CSS geschickt, um eine Image -Schwebe zu erzielen und Animationseffekte ohne zus?tzliche Elemente zu enthüllen! In diesem Artikel wird eingehend untersucht CSS enthüllen Animation zu Ihren Bildern " /> <img src="/static/imghw/default1.png" data-src="https://img.php.cn/upload/article/000/000/000/173906107393958.jpg" class="lazy" alt="How to Add a CSS Reveal Animation to Your Images ">
核心要點:
- 僅需
<img alt="So fügen Sie Ihren Bildern eine CSS -Animation hinzu" >
- Kernpunkte:
object-fit: cover
object-position: right
Es werden nur - Elemente ben?tigt, um CSS-Animationen ohne zus?tzliche Elemente oder Pseudoelemente zu implementieren.
object-fit: none
Der Schlüssel zur Animation lautet: Fügen Sie dem Bild das Polieren hinzu und reduzieren Sie es dann beim Schweben allm?hlich auf Null, w?hrend Sie Hintergrundfarben verwenden, um den visuellen Effekt des enthüllten Bildes zu erzeugen. Die Eigenschaften
werden verwendet, um das Seitenverh?ltnis des Bildes aufrechtzuerhalten und zu verhindern, dass sich das Bild w?hrend der Animation bewegt. <img alt="So fügen Sie Ihren Bildern eine CSS -Animation hinzu" >
Durch Anpassen der Polsterrichtung k?nnen Sie den Animationseffekt erweitern und mehr ?nderungen erstellen. Eigenschaften k?nnen in einigen Konfigurationen auch unterschiedliche Effekte erzielen, erfordern jedoch die CSS -Breite und -h?he, um den inh?renten Abmessungen des Bildes zu entsprechen.
In diesem Artikel wird einige CSS -Tipps untersucht, mit denen Sie beeindruckende Bild -Schweber -Animationen erstellen k?nnen. Sie denken vielleicht: "Es ist einfach! Fügen Sie einfach ein zus?tzliches Element über dem Bild hinzu." Dies mag unglaublich klingen, da nur Bildelemente verwendet werden, so scheint es, dass nichts darüber hinzugefügt werden kann. In der Tat fügen wir nichts über dem Bild hinzu, aber wir simulieren diesen Effekt intelligent! Hier ist eine Codepen -Demo, die zeigt, was wir gemeinsam untersuchen werden:
Codepen -Demo -Link
Ist es nicht cool? Das Enthüllen von Animationen kann mit nur wenigen Codezeilen erreicht werden, keine zus?tzlichen Elemente erforderlich. Lassen Sie uns in das Geheimnis dahinter eintauchen.
img { --s: 200px; /* 圖片大小 */ width: var(--s); height: var(--s); box-sizing: border-box; }Erste Konfiguration:
width
height
Definieren Sie zuerst die Bildgr??e: aspect-ratio
box-sizing: border-box
und zu verwenden, nicht zu verwenden. Dies ist ein Muss für unsere Animation und wir werden sp?ter erkl?ren, warum. Es ist auch sehr wichtig, auf die Verwendung von zu achten. Es hat momentan keine Wirkung, aber lassen Sie uns zum n?chsten Schritt übergehen und sehen, warum es ben?tigt wird.
box-sizing: border-box
Fügen Sie die Polsterung hinzu:
Wie wir in der Demo oben gesehen haben, wurde das Bild gepresst. Wir haben links 100px -Polster hinzugefügt, wodurch nur 100px Platz für das Bild (Inhaltsbereich) bleiben. Dies ist die Wirkung von box-sizing: border-box
. Wie MDN erkl?rt: border-box
fordert den Browser an, alle Grenzen und Polsterung in den Werten zu berücksichtigen, die Sie für die Breite und H?he des Elements angeben. Wenn Sie die Breite des Elements auf 100 Pixel einstellen, enth?lt 100 Pixel alle Grenzen oder Füllen, die Sie hinzugefügt haben, und das Inhaltsfeld schrumpft, um die zus?tzliche Breite zu absorbieren.
Stellen Sie sich jetzt eine Szene vor, in der die Polsterung gleich Breite ist. Ja, das Bild wird verschwinden! Schweben Sie in der folgenden Demo über das Bild, um die Ergebnisse anzuzeigen. Codepen Demo Link
In der obigen Demonstration müssen zwei Punkte geachtet werden. Die Polsterung kann animiert werden, was cool ist, und wir k?nnen auch die Bedeutung der CSS -Variablen sehen, die früher beim Definieren der Bildgr??e verwendet werden. Wir haben dieselbe Variable verwendet, um die Polsterung zu definieren, sodass wir nicht den gleichen Wert wiederholen müssen.
Hintergrundfarbe hinzufügen:
Nehmen wir das vorherige Beispiel und fügen Sie den Hintergrund hinzu. Codepen Demo Link
Wir beginnen unserem Ziel n?her zu kommen. Der Hintergrund wird logischerweise das gesamte Element abdecken. Wir k?nnen es unter dem Bild nicht sehen (es sei denn, wir verwenden transparente Bilder), aber wir k?nnen es im Füllbereich sehen. Unser Ziel ist es, das Bild zu enthüllen. Beginnen wir also zun?chst die Polsterung und setzen Sie es dann auf 0, wenn wir schweben - das Gegenteil von dem, was wir derzeit tun. Codepen Demo Link
Dies ist immer noch nicht der Effekt, den wir wollen, aber wir kommen immer n?her! Wir brauchen nur eine Zutat, um unsere ?falsche“ Enthüllung der Animation perfekt zu machen!
Objektfit und Objektposition hinzufügen:
Der fehlende Teil besteht darin, zu vermeiden, dass das Bild gepresst wird, und hier ist der letzte Trick. Wir werden die Werte object-fit
und cover
verwenden. Wie MDN erl?utert: Ersetzen Sie den Inhalt ersetzt sich, um das Seitenverh?ltnis beizubehalten und gleichzeitig das gesamte Inhaltsfeld des Elements zu füllen. Wenn das Seitenverh?ltnis eines Objekts nicht mit dem Seitenverh?ltnis seiner Box übereinstimmt, wird das Objekt so zugeschnitten.
Es gibt hier zwei wichtige Punkte:
- "Ersetzen Sie den Inhalt ersetzen Sie die Gr??enordnung, um das Seitenverh?ltnis aufrechtzuerhalten". Dies bedeutet, dass das Bild nicht gepresst wird, sondern seine inh?renten Proportionen beibeh?lt. Wir verwenden ein quadratisches Bild, sodass es das Quadrat h?lt.
- "Füllen Sie das gesamte Inhaltsfeld des Elements ... wird zu Anpassung geschnitten". Das Bild sollte alle Inhaltsbereiche füllen (den Bereich, den wir durch Hinzufügen von Füllung reduzieren), aber wenn es nicht innen passt, werden wir es zubereiten.
Probieren wir es in der Demo unten aus. Codepen Demo Link
Hast du es gesehen? Die Bilder werden nicht mehr gepresst! Es beh?lt seine Anteile innerhalb des Inhaltsbereichs bei, w?hrend wir die Polsterung hinzufügen/entfernen. Ok, wir k?nnten denken, dass sich der Effekt von der ersten Pr?sentation unterscheidet. Das Bild bewegt sich seltsam. Das stimmt. Jetzt wenden wir uns an object-position
. Der Standardwert lautet center
, daher befindet sich das Bild immer in der Mitte des Inhaltsbereichs und wird so zugeschnitten, dass sie innen passen. Deshalb bewegt es sich mit der Animation. Was wir als n?chstes tun müssen, sollte leicht vorherzusagen sein. Wir werden den Ort ?ndern, um sicherzustellen, dass sich das Bild nicht bewegt. Wir werden von links Polsterung hinzufügen, daher sollten wir object-position: right
die Position des Bildes nach rechts verwenden. Codepen Demo Link
unsere Enthüllung Animation ist abgeschlossen! Wir brauchen keine überlagerungen oder zus?tzliche Elemente über dem Bild. Durch die Verwendung einfacher Hintergrundfarben und einige Tipps zur Bildpositionierung haben wir sch?ne Enthüllung von Animationen mit einer kleinen Menge einfacher Code erreicht. Wir k?nnen die Richtung einfach aktualisieren, indem wir die Füllrichtung und object-position
einstellen. Hier ist die erste Demonstration aus der vorherigen, die vier Richtungen enth?lt. Codepen Demo Link
Folgendes ist das CSS, das wir verwenden:
img { --s: 200px; /* 圖片大小 */ width: var(--s); height: var(--s); box-sizing: border-box; }
Weitere Animationen enthüllt:
Wir k?nnen dieselbe Idee verwenden, um den Trick zu erweitern, um mehr ?nderungen zu erstellen. Anstatt die Polsterung von einer Seite hinzuzufügen/zu entfernen, k?nnen wir die Polsterung zu beiden Seiten oder sogar allen Seiten hinzufügen/entfernen. Codepen Demo Link
Wenn wir den oben gezeigten Code überprüfen, werden wir nicht feststellen, dass es einen gro?en Unterschied von der vorherigen gibt. Wir haben nur verschiedene Füllkonfigurationen eingerichtet, um mehr Variationen des gleichen Effekts zu erstellen. In den ersten und letzten Beispielen verwenden wir object-fit: none
statt object-fit: cover
, um einen Trick zu haben. In diesen F?llen reduziert die Füllung die Breite und H?he des Inhaltsbereichs auf 0, w?hrend wir in allen anderen F?llen nur die H?he oder Breite reduzieren. In dieser Konfiguration funktioniert cover
nicht, aber none
kann den Job machen. MDN -Hinweise: Der Ersatzinhalt wird nicht die Gr??e der Gr??e sein.
Warum verwenden wir nicht immer In beiden F?llen geben wir beide Animationen auf, aber wenn wir Schlussfolgerung: Ich hoffe, Sie haben dieses kleine CSS -Experiment genossen. Mit einfachen Tricks und einigen Codezeilen haben wir eine coole Enthüllung von Animation mit nur dem Ich werde Sie weiter erkunden und versuchen, mehr sch?ne Animationen zu finden! none
? Wir k?nnen es benutzen und es funktioniert, aber es hat einen kleinen Nachteil. Die inh?renten Dimensionen des Bildes werden berücksichtigt, sodass wir die CSS -Breite und -h?he gleich den inh?renten Dimensionen für die Wirkung der Technik machen müssen. Auf der anderen Seite h?lt nur die Skala des Bildes und die Gr??e des Bildes, um die Kastengr??e anzupassen, sodass wir jede CSS -Gr??e für das Bild sicher definieren k?nnen. Dies ist ein Vergleich, damit wir den Unterschied sehen k?nnen. none
Codepen Demo Link cover
object-fit: none
verwenden, ?ndert das Bild nicht und beh?lt seine Standardgr??e (500 x 500), was nicht gut ist. object-fit: cover
Behalten Sie nur den Anteil beibehalten und das Bild wird ge?ndert, um die Kastengr??e anzupassen. <img alt="So fügen Sie Ihren Bildern eine CSS -Animation hinzu" >
-Element implementiert. Wir haben auch viele ?nderungen anhand der gleichen Codestruktur vorgenommen. Wir k?nnen mit dieser Technik mehr tun. Ich werde Ihnen ein letztes Beispiel lassen, in dem ich ein Schwarzwei?bild in ein Farbbild umwandelte, w?hrend ich schwebte. Codepen Demo Link
Das obige ist der detaillierte Inhalt vonSo fügen Sie Ihren Bildern eine CSS -Animation hinzu. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Hei?e KI -Werkzeuge

Undress AI Tool
Ausziehbilder kostenlos

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

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

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?er Artikel

Hei?e Werkzeuge

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

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Hei?e Themen

CSS -Bl?cke Seitenrenderung, da Browser inline und externe CSS standardm??ig als wichtige Ressourcen anzeigen, insbesondere mit importierten Stylesheets, Header gro?er Mengen an Inline -CSS und nicht optimierten Medienfragestilen. 1. extrahieren kritische CSS und einbetten Sie es in HTML ein; 2. Verz?gerung des Ladens nichtkritischer CSS durch JavaScript; 3.. Verwenden Sie Medienattribute, um das Laden wie Druckstile zu optimieren. 4. Komprimieren und verschmelzen CSS, um Anfragen zu reduzieren. Es wird empfohlen, Tools zum Extrahieren von Schlüssel -CSS zu verwenden, REL = "Vorspannung" zu kombinieren, und verwenden Sie die asynchrone Belastung und verwenden Sie die Medienverz?gerungsladeverletzung, um eine überm??ige Aufteilung und eine komplexe Skriptsteuerung zu vermeiden.

ThebestApproachforcssDependsonTheProject'Sspecificneeds.forlargerProjects, externalcssisbetterDuetomaintainability;

Csssmostlycase-unempfindlich, buturlsandfontfamilynamesarecase-sensitiv.1) Eigenschaften und ValueslikeColor: rot; sensitiv.2) URLSMUTMATTHESERVER'SCASE, z.

AutoPrefixer ist ein Tool, das die Pr?fixe von Anbietern automatisch zu CSS -Attributen basierend auf dem Zielbrowserbereich hinzufügt. 1. Es l?st das Problem, die Pr?fixe mit Fehlern manuell aufrechtzuerhalten. 2. Arbeiten Sie das POSTCSS-Plug-in-Formular durch, analysieren Sie CSS, analysieren Sie Attribute, die vorangestellt werden müssen, und generieren Sie den Code gem?? Konfiguration. 3.. 4. Notizen enthalten nicht manuelles Hinzufügen von Pr?fixen, Konfigurationsaktualisierungen, Pr?fixe nicht alle Attribute, und es wird empfohlen, sie mit dem Pr?prozessor zu verwenden.

CSSCOUNTERSCANATOMATIONSNUMBERSEctions und.1) usecounter-resettoinitialize, counter-IncrementtoIncrease, und Counter () orcounters () todisplayValues.2) kombinierte withjavascriptfordynamiccontentToEsSureAccurateupdates.

In CSS sind Selektor- und Attributnamen fallempfindlich, w?hrend Werte, Namen, URLs und benutzerdefinierte Attribute fallempfindlich sind. 1. Die Auswahl- und Attributnamen sind unempfindlich, z. B. Hintergrundfarbe und Hintergrundfarbe sind gleich. 2. Die hexadezimale Farbe im Wert ist fallempfindlich, aber die benannte Farbe ist fallempfindlich, wie rot und rot ist ungültig. 3. Die URLs sind fallsempfindlich und k?nnen zu Ladeproblemen von Dateien führen. 4. Benutzerdefinierte Eigenschaften (Variablen) sind fallempfindlich und Sie müssen auf die Konsistenz des Falles bei der Verwendung achten.

CsSelectorsandPropertyNamesArecase-inemsitiv, w?hrend Valuescanbecase-sensibiledPendingoncontext.1) Selectors wie div'and'div'areequivalent.2) PropertieSuchas'back-background-color'and'background-Color'arteated-theam.3) VactieLKasecasecasecasecasecase-Ensens
