2016-05-06 6 views
2

Wenn ich einem Bild maximale Breite hinzufüge, verhindert es korrekt, dass das Bild breiter wird als die angegebene Größe, verhindert jedoch auch, dass das Bild kleiner wird, wenn das Browserfenster kleiner ist als die maximale Breite. Wenn ich denselben Stil mit einem div verwende, wird das div schmaler. (I in diesem Beispiel Inline-CSS für Einfachheit verwendet habe.)Maximale Breite im Bild verhindert Bild schrumpft

<div style="max-width: 400px;background: red;">Div Test</div> 
<img alt="" src="myimage.jpg" style="max-width: 400px;"> 

In dem obigen Code, die div und img (richtig) bekommt nie größer als 400px. Wenn ich jedoch das Browserfenster einstelle, bleibt der img 400px, während der div schmaler wird.

+0

Sie skalieren das Bild nicht. Gib es eine Breite in Prozent innerhalb der div – RFLdev

+0

div verhalten sich wie ein Blockelement, Bild nicht –

Antwort

3

Wenn Sie das Bild einem Prozentsatz geben für die margin wird es funktionieren, wie Sie es erwarten.

img { 
    max-width: 400px; 
    width: 100%; 
} 

Demo

+0

Perfekt! Danke Melancia! –

1

Es gibt keine Notwendigkeit, die max-width: des Bildes als eine festgelegte Anzahl von Pixeln zu setzen, wenn der Behälter eine Schränkungsweite ist, stellt nur die img bis max-width: 100%

2

Sie müssen dem div eine explizite Breite (zB '100%) geben, sonst wird es die tatsächliche Breite des Bildes verwenden (implizite'width: auto') als Referenz, die geeignet ist, mehr als '100% ':

<img alt="" src="myimage.jpg" style="max-width: 400px; width: 100%;"> 
+0

Perfekt! Danke Nils! –