webForumDet fria alternativet

Skala om bild, om den är för liten

HTML & CSS

4 svar · 334 visningar · startad av @nders

Medlem sedan juni 200032 967 inlägg
Frågan#1

Hej!

Jag har en bild som ska visas, men den får inte visas i ett mått bredare än 140px.
Alltså; om bildens bredd är större än 140 pixlar, så ska den skalas ner vid visning till 140px. Om bilden är mindre skall den visas i originalstorlek.

Några idéer om hur jag ska bära mig åt?

Mvh och tpf

Medlem sedan nov. 20041 740 inlägg
#2
#bilden {  max-width: 140px; }

...

<img id="bilden" src="bilden.png" alt="Bilden" />

Fungerar det? Här finns mer att läsa om max-width och IE.
Fast jag hade nog använt mig av något PHP-script som räknar ut höjden/bredden och skalar om bilden när den laddas upp.

Alternativt (om det är okej att beskära bilden) kan du lägga bilden som en bakgrundsbild i en DIV.

Medlem sedan aug. 20039 340 inlägg
#3

Detta javascript ändrar bilden lokalt. Det gör att om bilden är för stor kommer den att flimra till precis innan storleken ändras.
Den ändrar storleken på bilden och behåller höjd/bredd-skalan. Max-höjd och bredd kan sättas individuellt.

var maxwidth = 500;
var maxheight = 200;

function fixImgSize(th){
	var wratio = maxwidth / th.width;
	var hratio = maxheight / th.height;

	if (wratio <1 || hratio <1){	
		if (wratio<hratio){
			th.width *= wratio;
		}else{
			th.height *= hratio;
		}
	}
}

</script>
<img src="bild.jpg" onload="fixImgSize(this)">
Medlem sedan juni 200032 967 inlägg
#4

Jag är ledsen att jag inte återkommit om detta, har helt enkelt glömt bort att jag ställt frågan...

Gislaved; ditt exempel fick jag inte att fungera, men jag funderar på att installera någon asp-komponent för att beskära bilderna till thumbnails som du nämner. Det är klart att det är det bästa alternativet, men det finns ju ingenting sådant inbyggt i asp, så då får man leta komponent.

nitro: tack för förslaget, men bilderna är alltid för stora, och flimmer går bort. :)

Mvh

Medlem sedan nov. 20041 740 inlägg
#5

Om bilden alltid är för stor är det ju inga problem. Kör med

#bilden {  width: 140px; }

...

<img id="bilden" src="bilden.png" alt="Bilden" />

Jag vet att det är en gammal tråd, men jag missade att @nders hade svarat. :)

263 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
118 ms — deklarationer (db)
0 ms — hämta statistik (cache)
135 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)