The following fiddle shows image ratio correctly in Chrome / Firefox.
However in Internet Explorer the images (which should be square) retain their original height in
Add one bit of CSS:
img {
min-height: 1px;
}
http://jsfiddle.net/mblase75/3Lb5f8pe/
Honestly, I wish I knew why this works. In light of hexalys' answer, I suppose this forces IE to recalculate the height/width ratios. (In any event, I applied this to my own code just now where the affected element is a label instead of an image; it worked there, too.)