Heim > Artikel > Web-Frontend > Wie man Bilder mithilfe des Bildelements in HTML5 responsiv verarbeitet
Das sogenannte Responsive Design bedeutet, dass das Webseitenlayout auf Endgeräten mit unterschiedlichen Bildschirmauflösungen, unterschiedlichen Pixeldichteverhältnissen und unterschiedlichen Breiten adaptiv angepasst werden kann. Die ursprüngliche Absicht des responsiven Designs besteht darin, die ursprüngliche PC-Website mit mobilen Endgeräten kompatibel zu machen. Die meisten responsiven Webseiten werden durch Medienabfragen und das Laden von CSS-Dateien unterschiedlicher Stile implementiert. Diese Art des flexiblen Layouts macht das Layout der Website auf verschiedenen Geräteterminals sinnvoller. In diesem Artikel wird hauptsächlich die reaktionsfähige Bildverarbeitung von Bildelementen in HTML5 ausführlich erläutert. Der Herausgeber findet sie recht gut, daher werde ich sie jetzt mit Ihnen teilen und als Referenz verwenden. Folgen wir dem Herausgeber und schauen wir uns das an. Ich hoffe, es kann allen helfen.
Obwohl responsives Design viele Vorteile hat, hat es auch viele Nachteile. Da der PC und das mobile Endgerät auf dieselbe Website zugreifen, muss sich der PC nicht um das Verkehrslimit kümmern, das mobile Endgerät kann es jedoch nicht ignorieren.
Um uns an die Bildschirmbreite und Pixeldichte verschiedener Terminalmodelle anzupassen, verwenden wir im Allgemeinen die folgende Methode, um den CSS-Stil des Bildes festzulegen:
<style> img{ max-width:100%; height:auto; } </style>
Stellen Sie die maximale Breite des Bildes auf 100 % ein, um sicherzustellen, dass das Bild die Breite seines übergeordneten Elements nicht überschreitet. Wenn sich die Breite des übergeordneten Elements ändert, ändert sich auch die Breite des Bildes: Auto kann sicherstellen, dass sich die Breite des Bildes ändert. Die Höhe des Bildes wird entsprechend seinem eigenen Verhältnis von Breite zu Höhe skaliert.
Wenn wir auf einem mobilen Gerät auf das Bild in der responsiven Webseite zugreifen, skalieren wir nur die Auflösung des Bildes und laden das große Bild auf den PC herunter. Dies verschwendet nicht nur Datenverkehr, sondern auch Bandbreite Darüber hinaus wird die Öffnungsgeschwindigkeit von Webseiten verlangsamt und das Benutzererlebnis erheblich beeinträchtigt.
Neue Lösung:
Geben Sie ein paar Kastanien an
<picture> <source media="(min-width: 320px) and (max-width: 640px)" srcset="img/minpic.png"> <source media="(min-width: 640px)" srcset="img/middle.png"> <img src="img/picture.png" alt="this is a picture"> </picture>4. Fügen Sie das Bilddateiformat als Bedingung in der folgenden Kastanie hinzu: Wenn das Bild im Webp-Format unterstützt wird, wird das Bild im Webp-Format geladen, und wenn das Bild im PNG-Format nicht unterstützt wird, Das Bild im PNG-Format wird geladen.
<picture> <source media="(min-width: 320px) and (max-width: 640px) and (orientation: landscape)" srcset="img/minpic_landscape.png"> <source media="(min-width: 320px) and (max-width: 640px) and (orientation: portrait)" srcset="img/minpic_portrait.png"> <source media="(min-width: 640px) and (orientation: landscape)" srcset="img/middlepic_landscape.png"> <source media="(min-width: 640px) and (orientation: portrait)" srcset="img/middlepic_portrait.png"> <img src="img/picture.png" alt="this is a picture"> </picture>Fügen Sie im folgenden Beispiel eine Breitenbeschreibung hinzu größtes Bild;
<picture> <source media="(min-width: 320px) and (max-width: 640px)" srcset="img/minpic.png,img/minpic_retina.png 2x"> <source media="(min-width: 640px)" srcset="img/middle.png,img/middle_retina.png 2x"> <img src="img/picture.png,img/picture_retina.png 2x" alt="this is a picture"> </picture>6. Fügen Sie das Größenattribut im folgenden Beispiel hinzu; laden Sie die entsprechende Version des Bildes, wenn die Fensterbreite größer oder gleich 800 Pixel ist; >Kompatibilität:
<picture> <source type="image/webp" srcset="img/picture.webp"> <img src="img/picture.png" alt="this is a picture"> </picture>
Derzeit sind nur Chrome, Firefox und Opera damit kompatibel. Die spezifische Kompatibilität ist wie folgt:
<img src="picture-160.png" alt="this is a picture" sizes="90vw" srcset="picture-160.png 160w, picture-320.png 320w, picture-640.png 640w, picture-1280.png 1280w">Vorteile: Laden Sie Bilddateien in geeigneter Größe, damit die verfügbare Bandbreite voll ausgenutzt wird.
Laden Sie Bilder, die unterschiedlich zugeschnitten sind und unterschiedliche Seitenverhältnisse haben, um Layoutänderungen bei unterschiedlichen Anforderungen zu berücksichtigen Breiten;
Ladet höhere Pixeldichte, zeigt Bilder mit höherer Auflösung an
Erstellen Sie
Fügen Sie ein srcset-Attribut hinzu. Der Attributwert ist der entsprechende Bilddateiname, und laden Sie ihn. Wenn Sie unterschiedliche Pixeldichten bereitstellen möchten, z. B. bei Retina-Anzeigen, können Sie dem srcset-Attribut zusätzliche Dateinamen hinzufügen.
🎜>
Das obige ist der detaillierte Inhalt vonWie man Bilder mithilfe des Bildelements in HTML5 responsiv verarbeitet. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!