Un pequeño detalle del clear:both, ya está solucionado y funciona en IE y Firefox:
Código HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es" lang="es">
<head>
<title>Dos columnas misma altura</title>
<style type="text/css">
#contenedor { overflow: hidden; }
#menu { float: left; width: 15%; background: #eee; margin-bottom: -3000px; padding-bottom: 3000px; }
#texto { float: left; width: 85%; margin-bottom: -3000px; padding-bottom: 3000px; }
.clear { clear: both; }
</style>
</head>
<body>
<div id="contenedor">
<div id="menu">
Este es el menú
</div>
<div id="texto">
Este es el texto<br />
Hola
</div>
<div class="clear"></div>
</div>
</body>
</html>