2017-03-24 3 views
0

Bei this page, um Darstellungsbreite 870px, gibt es eine Lücke, die unter jedem .program-image img erscheint:CSS: Was verursacht diese Lücke?

enter image description here

Wie kann ich jede .program-image img sicherzustellen, die Höhe jedes .program oder jede .program ist die Höhe jedes .program-image img?

Hilfe geschätzt.

+3

Bitte fügen Sie aussagekräftigen Code und eine Problembeschreibung hier. Verknüpfen Sie nicht nur die Website, die repariert werden muss - sonst verliert diese Frage für zukünftige Besucher jeglichen Wert, sobald das Problem gelöst ist oder wenn auf die Website, auf die Sie verlinken, nicht zugegriffen werden kann. Wenn Sie ein [minimales, vollständiges und überprüfbares Beispiel (MCVE)] (http://stackoverflow.com/help/mcve) veröffentlichen, das Ihr Problem veranschaulicht, können Sie bessere Antworten erhalten. Weitere Informationen finden Sie unter [Etwas auf meiner Website funktioniert nicht. Kann ich einfach einen Link einfügen?] (Https://meta.stackexchange.com/questions/125997/) Danke! –

+0

.program-image {padding-bottom: 0;} –

+0

putting zu .program-image –

Antwort

0

Da die Bildhöhe von ihrer Breite abhängt, wird aufgrund dieser Regel eine Lücke erzeugt. Um dies zu vermeiden, füge ich das Bild im Allgemeinen als Hintergrundbild eines div hinzu und setze die Hintergrundgröße auf deckung (wodurch das Bild das gesamte div bedeckt).

Zuerst entfernen Sie das Bild-Tag und legen Sie das Hintergrundbild innerhalb der Programm-Bild div.

<div class="program"> 
    <div class="program-image" style="background-image:url('http://vmpersonal.com/wp-content/uploads/2017/02/program-pregnancy.jpg');"> 
     ... 

Dann würde ich gehen Sie vor den folgenden CSS hinzufügen:

.program-image { 
    height: 90px; // Or whatever height needed 
    width: 45.23809523%; 
    float: left; 
    max-height: auto; 
    background-size: cover; 
    background-position: center; 
    background-repeat: no-repeat; 
} 

Hier wird die Höhe des div, da sie nicht berücksichtigt die Höhendimension des Bildes stattfinden wird.

Um sicherzustellen, dass das Bild nicht über das Programmelement überläuft. Fügen Sie die folgenden:

.program { 
    overflow: hidden; 
} 

Unten ist ein Beispiel dafür, wie es aussieht (Zweite Programm ist, wie es derzeit ist, beispielsweise schließt background-position: center Entschuldigungen).

Ich hoffe, das hilft.

enter image description here

+0

Danke für deine Hilfe Kelvin – Steve

0

<img> Markierung ist inline-block Element, so dass Sie immer vertical-align dafür definieren müssen. sonst mach es blockieren.

img { 
    vertical-align: top; 
} 

oder benutzen Sie diese

img { 
    display: block; 
} 
0

Vielleicht versuchen:

height: 100%; 

oder

min-height: 100%; 

auf dem Bildauswahl.

Verwandte Themen