NOTE: In 2016, you can probably use flexbox
to solve this problem easier.
This method works correctly IE7+ and all major browsers, it's been tried and tested in a number of complex viewport-based web applications.
<style>
.container {
font-size: 0;
}
.ie7 .column {
font-size: 16px;
display: inline;
zoom: 1;
}
.ie8 .column {
font-size:16px;
}
.ie9_and_newer .column {
display: inline-block;
width: 50%;
font-size: 1rem;
}
</style>
<div class="container">
<div class="column">text that can wrap</div>
<div class="column">text that can wrap</div>
</div>
Live demo: http://output.jsbin.com/sekeco/2
The only downside to this method for IE7/8, is relying on body {font-size:??px}
as basis for em/%-based font-sizing.
IE7/IE8 specific CSS could be served using IE's Conditional comments