Heim Web-Frontend CSS-Tutorial So implementieren Sie das verzögerte Laden von responsiven Bildern mithilfe von CSS-Eigenschaften

So implementieren Sie das verzögerte Laden von responsiven Bildern mithilfe von CSS-Eigenschaften

Nov 18, 2023 am 08:12 AM
响应式 延迟加载 CSS-Eigenschaften

So implementieren Sie das verzögerte Laden von responsiven Bildern mithilfe von CSS-Eigenschaften

So implementieren Sie responsives Lazy Loading von Bildern mithilfe von CSS-Eigenschaften

Bei der Webentwicklung stoßen wir häufig auf Situationen, in denen eine große Anzahl von Bildern geladen werden muss, insbesondere auf mobilen Geräten. Um die Seitenladegeschwindigkeit und das Benutzererlebnis zu verbessern, ist das verzögerte Laden von Bildern zu einer gängigen Optimierungsmethode geworden.

Lazy Loading bedeutet, dass beim Laden der Seite nur die Bilder im sichtbaren Bereich geladen werden, anstatt alle Bilder auf der gesamten Seite zu laden. Dies reduziert die für das anfängliche Laden erforderliche Zeit erheblich und vermeidet unnötige Bandbreitenverschwendung.

In diesem Artikel stellen wir die Methode zur Verwendung von CSS-Eigenschaften zum Implementieren von responsivem Lazy Loading von Bildern vor, die auf verschiedene Bildschirmgrößen und Geräte angewendet werden kann.

Zuerst müssen wir die Bilder definieren, die träge in HTML geladen werden müssen. Hier verwenden wir das Element <img class="lazy-image lazy" src="/static/imghw/default1.png" data-src="image.jpg" alt="So implementieren Sie das verzögerte Laden von responsiven Bildern mithilfe von CSS-Eigenschaften" > und legen ein benutzerdefiniertes Attribut data-src fest, um die tatsächliche URL des Bildes zu speichern. <img class="lazy-image lazy" src="/static/imghw/default1.png" data-src="image.jpg" alt="So implementieren Sie das verzögerte Laden von responsiven Bildern mithilfe von CSS-Eigenschaften" >元素,并设置一个自定义的属性data-src来存储图像的实际URL。

<img class="lazy-image lazy" src="/static/imghw/default1.png" data-src="image.jpg" data- alt="Image">
Nach dem Login kopieren

接下来,我们需要编写CSS样式来隐藏初始的图像,并通过使用background-size属性设置图像的背景图片。

.lazy-image {
  background-image: url(placeholder.jpg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
Nach dem Login kopieren

在上面的代码中,placeholder.jpg是一个占位图像,用于在实际图像加载完成之前显示。

然后,我们使用CSS属性@media来针对不同的屏幕尺寸定义不同的样式。

/* 对于大屏幕设备,立即加载图像 */
@media screen and (min-width: 1024px) {
  .lazy-image {
    background-image: none;
  }
}

/* 对于小屏幕设备,延迟加载图像 */
@media screen and (max-width: 1023px) {
  .lazy-image {
    visibility: hidden;
  }
  
  .lazy-image[data-src] {
    visibility: visible;
  }
}
Nach dem Login kopieren

在上述代码中,我们使用@media指令将屏幕宽度分为两个范围:大于等于1024px和小于1024px。对于大屏幕设备,我们立即加载图像,将background-image设置为none。对于小屏幕设备,我们将.lazy-imagevisibility属性设置为hidden,同时为带有data-src属性的.lazy-image元素设置visibility属性为visible,这样就可以实现延迟加载图像。

最后,我们需要使用JavaScript来实现图像的实际加载。

document.addEventListener("DOMContentLoaded", function() {
  const lazyImages = document.querySelectorAll(".lazy-image");

  const lazyLoad = function() {
    lazyImages.forEach(function(img) {
      if (img.getBoundingClientRect().top <= window.innerHeight && img.hasAttribute("data-src")) {
        img.setAttribute("src", img.getAttribute("data-src"));
        img.removeAttribute("data-src");
      }
    });
  };

  window.addEventListener("scroll", lazyLoad);
  window.addEventListener("resize", lazyLoad);
  window.addEventListener("orientationchange", lazyLoad);
});
Nach dem Login kopieren

上述代码中,我们使用document.querySelectorAll获取所有带有.lazy-image类的元素,并定义一个lazyLoad函数来判断图像是否在可见区域内,如果是则加载图像。

最后,我们将lazyLoadrrreee

Als nächstes müssen wir CSS-Stile schreiben, um das ursprüngliche Bild auszublenden und den Hintergrund des Bildes mithilfe der Eigenschaft background-size festzulegen.

rrreee

Im obigen Code ist placeholder.jpg ein Platzhalterbild, das zur Anzeige verwendet wird, bis das eigentliche Bild geladen wird. 🎜🎜Dann verwenden wir das CSS-Attribut @media, um verschiedene Stile für verschiedene Bildschirmgrößen zu definieren. 🎜rrreee🎜Im obigen Code verwenden wir die Anweisung @media, um die Bildschirmbreite in zwei Bereiche zu unterteilen: größer oder gleich 1024 Pixel und kleiner als 1024 Pixel. Bei Geräten mit großem Bildschirm laden wir das Bild sofort und setzen background-image auf none. Für Geräte mit kleinem Bildschirm setzen wir das Attribut visibility von .lazy-image auf hidden und setzen das Attribut data-src.lazy-image-Element des /code>-Attributs setzt das visibility-Attribut auf visible, sodass ein verzögertes Laden von Bildern erreicht werden kann. 🎜🎜Schließlich müssen wir JavaScript verwenden, um das Bild tatsächlich zu laden. 🎜rrreee🎜Im obigen Code verwenden wir document.querySelectorAll, um alle Elemente mit der Klasse .lazy-image abzurufen und eine lazyLoad-Funktion zu definieren Um festzustellen, ob sich das Bild im sichtbaren Bereich befindet, laden Sie ggf. das Bild. 🎜🎜Schließlich binden wir die Funktion lazyLoad an die Browser-Scroll-, Fenstergrößen- und Bildschirmausrichtungsänderungsereignisse, sodass die Ladefunktion ausgelöst wird, wenn die Seite scrollt oder ihre Größe ändert. 🎜🎜Das Obige ist die Methode und das entsprechende Codebeispiel für die Verwendung von CSS-Eigenschaften zum Implementieren des verzögerten Ladens reaktionsfähiger Bilder. Mit dieser Methode können wir die Ladegeschwindigkeit von Webseiten optimieren, das Benutzererlebnis verbessern und unnötige Bandbreitenverschwendung vermeiden. 🎜

Das obige ist der detaillierte Inhalt vonSo implementieren Sie das verzögerte Laden von responsiven Bildern mithilfe von CSS-Eigenschaften. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Chat -Befehle und wie man sie benutzt
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Was ist die Architektur und das Arbeitsprinzip von Spring Data JPA? Was ist die Architektur und das Arbeitsprinzip von Spring Data JPA? Apr 17, 2024 pm 02:48 PM

SpringDataJPA basiert auf der JPA-Architektur und interagiert mit der Datenbank über Mapping, ORM und Transaktionsmanagement. Sein Repository bietet CRUD-Operationen und abgeleitete Abfragen vereinfachen den Datenbankzugriff. Darüber hinaus nutzt es Lazy Loading, um Daten nur bei Bedarf abzurufen und so die Leistung zu verbessern.

Was bedeutet Groove in CSS? Was bedeutet Groove in CSS? Apr 28, 2024 pm 04:12 PM

In CSS stellt Groove einen Rahmenstil dar, der einen Groove-ähnlichen Effekt erzeugt. Die spezifische Anwendung ist wie folgt: Verwenden Sie die CSS-Eigenschaft border-style: Groove; der rillenförmige Rand hat eine konkave Innenkante, eine erhöhte Außenkante und einen Schatteneffekt.

Winkelkomponenten und ihre Anzeigeeigenschaften: Nicht-Block-Standardwerte verstehen Winkelkomponenten und ihre Anzeigeeigenschaften: Nicht-Block-Standardwerte verstehen Mar 15, 2024 pm 04:51 PM

Das Standardanzeigeverhalten für Komponenten im Angular-Framework gilt nicht für Elemente auf Blockebene. Diese Designwahl fördert die Kapselung von Komponentenstilen und ermutigt Entwickler, bewusst zu definieren, wie jede Komponente angezeigt wird. Durch explizites Festlegen der CSS-Eigenschaft display kann die Anzeige von Angular-Komponenten vollständig gesteuert werden, um das gewünschte Layout und die gewünschte Reaktionsfähigkeit zu erreichen.

Tipps zur Leistungsoptimierung von Java JPA: Bringen Sie Ihre Anwendung zum Erfolg Tipps zur Leistungsoptimierung von Java JPA: Bringen Sie Ihre Anwendung zum Erfolg Feb 19, 2024 pm 09:03 PM

Artikelschlüsselwörter: JavaJPA-Leistungsoptimierung ORM-Entitätsverwaltung JavaJPA (JavaPersistance API) ist ein objektrelationales Mapping (ORM)-Framework, mit dem Sie Java-Objekte zum Bearbeiten von Daten in der Datenbank verwenden können. JPA bietet eine einheitliche API für die Interaktion mit Datenbanken, sodass Sie denselben Code für den Zugriff auf verschiedene Datenbanken verwenden können. Darüber hinaus unterstützt JPA auch Funktionen wie Lazy Loading, Caching und Dirty Data Detection, die die Anwendungsleistung verbessern können. Bei falscher Verwendung kann die JPA-Leistung jedoch zu einem Engpass für Ihre Anwendung werden. Im Folgenden sind einige häufige Leistungsprobleme aufgeführt: N+1-Abfrageproblem: Wenn Sie JPQL-Abfragen in Ihrer Anwendung verwenden, können N+1-Abfrageprobleme auftreten. In dieser Art

Was tun, wenn das HTML-Bild zu groß ist? Was tun, wenn das HTML-Bild zu groß ist? Apr 05, 2024 pm 12:24 PM

Hier sind einige Möglichkeiten, zu große HTML-Bilder zu optimieren: Bilddateigröße optimieren: Verwenden Sie ein Komprimierungstool oder eine Bildbearbeitungssoftware. Verwenden Sie Medienabfragen: Ändern Sie die Größe von Bildern je nach Gerät dynamisch. Implementieren Sie Lazy Loading: Laden Sie das Bild nur, wenn es in den sichtbaren Bereich gelangt. Verwenden Sie ein CDN: Verteilen Sie Bilder an mehrere Server. Bildplatzhalter verwenden: Zeigt ein Platzhalterbild an, während das Bild geladen wird. Miniaturansichten verwenden: Zeigt eine kleinere Version des Bildes an und lädt das Bild in voller Größe beim Klicken.

Entschlüsselung von Laravel-Leistungsengpässen: Optimierungstechniken vollständig enthüllt! Entschlüsselung von Laravel-Leistungsengpässen: Optimierungstechniken vollständig enthüllt! Mar 06, 2024 pm 02:33 PM

Entschlüsselung von Laravel-Leistungsengpässen: Optimierungstechniken vollständig enthüllt! Als beliebtes PHP-Framework bietet Laravel Entwicklern umfangreiche Funktionen und ein komfortables Entwicklungserlebnis. Mit zunehmender Größe des Projekts und steigender Anzahl an Besuchen kann es jedoch zu Leistungsengpässen kommen. Dieser Artikel befasst sich mit den Techniken zur Leistungsoptimierung von Laravel, um Entwicklern dabei zu helfen, potenzielle Leistungsprobleme zu erkennen und zu lösen. 1. Optimierung der Datenbankabfrage mithilfe von Eloquent. Vermeiden Sie verzögertes Laden, wenn Sie Eloquent zum Abfragen der Datenbank verwenden

Wie optimiert Hibernate die Leistung von Datenbankabfragen? Wie optimiert Hibernate die Leistung von Datenbankabfragen? Apr 17, 2024 pm 03:00 PM

Zu den Tipps zur Optimierung der Hibernate-Abfrageleistung gehören: Verwenden von Lazy Loading, um das Laden von Sammlungen und zugehörigen Objekten zu verzögern; Verwenden von Stapelverarbeitungsvorgängen, um Aktualisierungs-, Lösch- oder Einfügevorgänge zu kombinieren, um häufig abgefragte Objekte im Speicher zu speichern; , Entitäten und ihre zugehörigen Entitäten abrufen; Abfrageparameter optimieren, um den SELECTN+1-Abfragemodus zu vermeiden; Verwendung von Indizes, um die Leistung bestimmter Abfragen zu verbessern;

So verhindern Sie ein Iframe-Ladeereignis So verhindern Sie ein Iframe-Ladeereignis Feb 19, 2024 am 08:02 AM

So verhindern Sie Iframe-Ladeereignisse. In der Webentwicklung verwenden wir häufig Iframe-Tags, um andere Webseiten oder Inhalte einzubetten. Wenn der Browser einen Iframe lädt, wird standardmäßig das Ladeereignis ausgelöst. In einigen Fällen möchten wir jedoch möglicherweise das Laden eines Iframes verzögern oder das Ladeereignis vollständig verhindern. In diesem Artikel werden wir anhand von Codebeispielen untersuchen, wie dies erreicht werden kann. 1. Laden des Iframes verzögern Wenn Sie das Laden des Iframes verzögern möchten, können wir Folgendes verwenden

See all articles