Matthias: float Problem mit input button innerhalb divs

Hallo Wissende!

Habe ein float Problem. Bzw. will der input button seine Höhe scheinbar nicht dem div sagen. Also es geht um folgende Testseite:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
  <meta http-equiv="content-type" content="text/html; charset=windows-1250">
  <meta name="generator" content="PSPad editor, www.pspad.com">
  <title>float test</title>
  <style type="text/css">
      .floatdiv1
        {
        float:right;
        width:20em;
        background-color:red;
        }

.floatdiv2
        {
        float:right;
        width:20em;

background-color:yellow;
        }
      .normalerdiv
        {
        clear:both;
        height:20em;
        width:20em;
        background-color:lime;
        }
   </style>
  </head>
  <body>
  <div class='floatdiv1'>
<!-- nimmt man diesen input raus, "bricht" das div richtig um -->
    <input type="button" value="Hallo" />
    <a href="#">test</a>
  </div>
  <br />
  <div class='floatdiv2'>
    sodele
  </div>
  <div class='normalerdiv'>

Dies ist der normale div das float right hat
  </div>
  </body>
</html>

Nehme ich den input aus dem floatdiv1 raus, wir das floatdiv2 "richtig" angeordnet.

Kann mit jemand sagen, wie ich dies auch mit input im div hinbekomme?

Danke - Grüße
Matthias