I'm late for this party, but I just ran into this problem myself, and just removing the max-width or non-floating parent was not parameters. As a result, I had to find a real solution: just add width:auto; , eg:
img { height: auto; width: auto; max-width: 100%; }
Ironically worked wonderfully in every browser, but Chrome 20, which then began to behave like IE8. Therefore, I applied the CSS hack for IE8 only:
img { height: auto; width: auto\0/; max-width: 100%; }
Now, before everyone leaves the game, I selected the CSS hack because I am making this particular change to the Bootstrap CSS Framework reset, which already uses hacks in other places. If you want to follow the white hat, you can simply add a conditional comment to your HTML:
One more note: if you use the hacked * .less file above, you need to escape from it, or the LESS compiler will choke it:
width: e('auto\0/');
source share