Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to increase width of image when dimensions are not known in CSS?

Tags:

html

css

image

I have an image tag like

<img />

I then dynamically download a link to an image, and I set the image src to that link. I do not know the dimensions of the image in the link. Is there a CSS code I can use to make sure the width of the image is exactly 200px (no crop, just stretch to fit) and the height of the image is the same as on the original image? (so basically just a horizontal scale when original dimensions are not known). Whatever I try, it seems to preserve the aspect ratio.

Thanks

Here's an example: I am dynamically loading this image: enter image description here

I don't know its dimensions, But in the end, I want it to look like (pretend its width is 200px).

enter image description here

like image 445
omega Avatar asked Dec 06 '25 05:12

omega


2 Answers

This is what you are looking for.

function formatImage(t)
{
    //var t = document.getElementById("idOfImg");
    alert(t.naturalWidth + " " + t.naturalHeight);
    t.height = t.naturalHeight;
    t.width = "200";

}

On every image that you want this behavior add onload=formatImage(this);

JSFiddle https://jsfiddle.net/94rzcLh6/

Lmk if it works. I have not used proper naming on fiddle kindly ignore that.

like image 64
pratikpawar Avatar answered Dec 07 '25 19:12

pratikpawar


how about this:

css:

.content{
  display:table;
}

.thumb{
  width:200px;
  height:100%;
  display:table-cell;
  vertical-align:top;
}

.thumb .in, .thumb .in img{
  width:100%;
  height:100%;
}

html:

<div class="content">
  <div class="thumb">
    <div class="in">
      <img src="http://www.planwallpaper.com/static/cache/7b/30/7b306aff620b08d0eefdb6b37f57abc8.jpg" />
    </div>
  </div>
  <div class="thumb">
    <div class="in">
      <img src="http://www.planwallpaper.com/static/cache/a6/4f/a64ffdfc06a8bea4ed2e62f2a44b063d.jpg" />
    </div>
  </div>
  <div class="thumb">
    <div class="in">
      <img src="http://www.gettyimages.es/gi-resources/images/RoyaltyFree/113198687.jpg" />
    </div>
  </div>
</div>

jsfiddle

In the jsfidle sample I check the height and this preserve it.Taking from 2 browsers.The same is for other images.

enter image description here

like image 35
miglio Avatar answered Dec 07 '25 20:12

miglio



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!