Derzeit gibt es drei Möglichkeiten, die Mitte eines Bildes im img-Tag in HTML anzuzeigen. Ich werde sie hier aufzeichnen. Die erste Methode: Verwenden Sie CSS clip:rect (oben rechts, unten links). Bei der Verwendung muss position: absolute wie folgt verwendet werden: <img src="upload/2022/web/77b8b5ca-11d3-4307-9a93-c12df5eb1a35.jpg" Stil = "Position: absolut; Clip: Rechteck (0px, 250px, 200px, 50px); Breite: 300px; Höhe: 200px"> Das Festlegen der Breite und Höhe des Bildes entspricht dem proportionalen Skalieren des Bildes auf seine tatsächliche Breite und Höhe und dem anschließenden Festlegen des Zuschneidebereichs des Bildes mithilfe der Rect-Methode. - Die zweite Methode: Verwenden des Hintergrundattributs von img: <style type="text/css"> img { background-image: url(upload/2022/web/77b8b5ca-11d3-4307-9a93-c12df5eb1a35.jpg);//Hintergrundbild festlegen background-repeat: no-repeat;//Das Hintergrundbild wird nur einmal angezeigt. Hintergrundanhang: scrollen;// background-position: -50px 0px;//Legt den Versatz des Hintergrundbildes fest. Diese -50 entsprechen einem gesamten Hintergrund, der 50 nach links versetzt ist, damit die Bildmitte angezeigt werden kannbackground-size: 300px 200px;////Legt die Größe des Hintergrundbildes fest, die der tatsächlichen Breite und Höhe des Bildes entspricht, die proportional skaliert wirdbackground-color: transparent;// Breite: 200px;// Höhe: 200px;// } </Stil> Verwenden Sie den Hintergrund, um die Mittelposition der Bildanzeige zu steuern. Sie müssen den Hintergrund so einstellen, dass er proportional zur tatsächlichen Breite und Höhe des Bildes skaliert wird, und dann die Bewegung des Hintergrunds versetzen, um die Breite und Höhe des Bildes zu steuern. Es ist zu beachten, dass die Quelle des Bildes nicht festgelegt werden kann. Wenn das img-Tag die Quelle nicht festlegt, wird auf dem angezeigten Bild ein grauer Rand angezeigt, und es gibt keine Möglichkeit, ihn zu entfernen. border:0px hat keine Wirkung. Meine vorherige Lösung bestand darin, ein standardmäßig vollständig transparentes Bild in die Quelle einzufügen, wodurch das Problem gelöst wurde. Die dritte Methode: img in div einbinden und divs overflow: hidden; zur Steuerung verwenden. Dies ist flexibler in der Anwendung. <div style="Breite: 100px;Höhe: 100px;Überlauf: versteckt"> <img src="upload/2022/web/77b8b5ca-11d3-4307-9a93-c12df5eb1a35.jpg" style="position: relativ" id="img_id"> </div> <Skript> var img = document.getElementById("img_id"); var image = neues Bild(); var realWidth = 0; //Die tatsächliche Breite des Bildes speichern var realHeight = 0; //Die tatsächliche Höhe des Bildes speichern //Breite und Höhe des Bildes abrufen image.src = "upload/2022/web/77b8b5ca-11d3-4307-9a93-c12df5eb1a35.jpg"; //Verarbeitung des erfolgreichen Ladens image.onload = function () { realWidth = image.width; //Die tatsächliche Breite des Bildes abrufen realHeight = image.height; //Die tatsächliche Höhe des Bildes abrufen //Lass die Breite und Höhe von img proportional zur tatsächlichen Breite und Höhe des Bildes sein und verschiebe dann, wenn (realWidth > realHeight){ img.width = (100/realHeight)*realWidth; //Proportionale Skalierungsbreite img.height = 100; //Konsistent mit Div-Höhe img.style.left = '-' + ((100/realHeight)*realWidth-100)/2 + 'px'; //Setze den relativen Positionsversatz des Bildes auf die halbe Breite-Höhe des img-Tags }else if (realWidth < realHeight){ img.width = 100; // gleiche Höhe wie div img.height = (100/realeBreite)*realeHöhe; // proportionale Skalierungshöhe img.style.top = '-' + ((100/realeBreite)*realeHöhe-100)/2 + 'px'; // setze den relativen Positionsversatz des Bildes auf die halbe Höhe-Breite des img-Tags }else { Bildbreite = 100; Bildhöhe = 100; } }; //Verarbeitung von Bildladefehlern img.onerror = function () { img.src = „https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1492076382452&di=04ebd6c4688b2ffbd8ae18e685234704&imgtype=0&src=http%3A%2F%2Fd.hiphotos.baidu.com%2Fzhidao%2Fwh%253D450%252C600%2Fsign%3D0c96dc86da33c895a62b907fe4235fc6%2F0823dd54564e9258d2bb2dff9f82d158ccbf4e17.jpg“; Bildbreite = 100; Bildhöhe = 100; } </Skript> Die obigen Kommentare sind sehr klar. Die Hauptsache ist, dass div die Größe steuert und das img-Tag seine eigene Größe entsprechend der Größe von div anpasst. Der Versatz wird durchgeführt, um den mittleren Bildteil anzuzeigen. Persönlich halte ich die dritte Methode für besser. Oben sind die Methoden (drei Methoden), die ich Ihnen in HTML vorgestellt habe, um nur die Mitte des Bildes im img-Tag anzuzeigen. Ich hoffe, es wird Ihnen helfen. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und ich werde Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken! |
<<: Implementierungsprinzip und Konfiguration der MySql Master-Slave-Replikation
>>: So kommunizieren Sie zwischen dem WIN10-System und der internen Container-IP von Docker
Abfragen der Datenbank Wählen Sie * aus `Student`...
Inhaltsverzeichnis 1. Anwendung und Konfiguration...
MySQL erstellt bei der Installation automatisch e...
Dieser Artikel beschreibt anhand von Beispielen, ...
Inhaltsverzeichnis 1. Vorbereitende Maßnahmen 1.1...
Inhaltsverzeichnis Prozesskommunikation Bidirekti...
Installieren Sie die neueste stabile Version von ...
Code kopieren Der Code lautet wie folgt: <styl...
Modulares Cocos Creator-Skript Mit Cocos Creator ...
Vorwort vsftp ist eine benutzerfreundliche und si...
Teil 3: ❤Drei Möglichkeiten, den Backend-Datenemp...
Native js realisiert den Karusselleffekt (nahtlos...
Schlägt die Remote-Verbindung zu MySQL fehl, kann...
Durch Aktivieren der Papierkorbfunktion können Si...
Dieses Mal werden wir versuchen, den laufenden Co...