2017-05-11 6 views
-1

Ich versuche, an einem Bildabschnitt zu arbeiten, in dem sie von den Servern gerendert werden. Es gibt einige Bilder, die unterschiedliche Höhen haben. Aus diesem Grund kann ich die Bilder nicht auf eine Art ausrichten.Wie bekomme ich Bilder mit gleicher Höhe?

HINWEIS - Ich habe die Bilder ausgerichtet, mit display:inline aber derzeit nicht in der Lage, Höhe Problem zu lösen.

Aktueller Zustand: enter image description here

Was ich versuche zu folgen ist ähnlich wie Google: enter image description here

img.res-img { 
 
    max-width: 350px; 
 
    max-height: 300px; 
 
    padding-top: 20px; 
 
    padding: 0.6%; 
 
    float: left; 
 
} 
 

 
.image-result { 
 
    padding-left: 80px; 
 
    display: inline; 
 
}
<div class="image-result" *ngIf="Display('images')"> 
 
    <div *ngFor="let item of items$|async"> 
 
    <a href="{{item.link}}"><img class="res-img" src="{{item.link}}" onerror="this.style.display='none'"></a> 
 
    </div> 
 
</div>

Es wäre toll, wenn mir jemand helfen kann damit draußen. Vielen Dank!

UDPATE 1 - Was ich von Vorschlägen tat, ist dies -

img.res-image { 
    float: left; 
    position: relative; 
    width: 20%; 
} 

Dies ist, wie es jetzt aussieht, ist noch Höhe Problem zu lösen, nicht in der Lage zu sein! enter image description here

UPDATE 2 - Nach der Antwort scheint diese Lösung zu funktionieren. Aber die Auflösung der Bilder wurde verringert und das Seitenverhältnis ist nicht korrekt.

img.res-img { 
    width: 350px; 
    height: 300px; 
    padding-top: 20px; 
    padding: 0.6%; 
    float: left; 
} 

Ich habe max-width und max-height entfernt und verwendet width und height

Dies ist, wie es jetzt aussieht: enter image description here

+0

https://www.sitepoint.com/recreating-google-images-search-layout-css/ –

+0

@ArjanKnol Dank. Bitte überprüfen Sie meine aktualisierte Frage. Ich folgte dem Link, den du mir gegeben hast. –

Antwort

1

entfernen max-width & max-height Eigenschaft und fügen Sie einfach Breite & Höhe Eigenschaft in Ihrem css

img.res-img { 
     width: 350px; 
     height: 300px; 
     padding-top: 20px; 
     padding: 0.6%; 
     float: left; 
    } 

    .image-result { 
     padding-left: 80px; 
     display: inline; 
    } 
+0

Danke! Es ist eine großartige Lösung! Bilder wurden perfekt ausgerichtet, wie ich es erwartet hatte. Aber ihre Auflösung wurde verringert und das Seitenverhältnis ist nicht korrekt. –

+0

ändern Sie Höhe und Breite gemäß Ihrer Entschließunganforderung ... – RHapani

1

Sie müssen allein eine Sache setzen, das heißt entweder die Höhe oder die Breite um das Seitenverhältnis gleich zu halten.

In Ihrem Fall müssen Sie Höhe auf alle Bilder gleich sein, so dass Sie nur die max-width Eigenschaft wie folgt entfernen müssen:

img.res-img { 
    /*max-width: 350px;*/ 
    max-height: 300px; 
    padding-top: 20px; 
    padding: 0.6%; 
    float: left; 
} 

Sie auch dir Geige beziehen kann ich gerade erstellt: https://jsfiddle.net/387bnaer/

+0

Das OP muss "Breite" oder "Höhe" einstellen. Das Setzen von 'max-width' und' min-width' ist kein Problem; die fehlende 'Breite' oder' Höhe' ist. –

+0

Ich denke 'Max-Höhe' würde damit umgehen, auch wenn ich die Höhe nicht überschreite, oder? –

+0

Nicht wenn die Bilder kleiner sind! –

Verwandte Themen