By default, the contents of a text area are the contents between its tags. Your source has something like:
<textarea name="bio"> </textarea>
therefore, the initial value of the text area is a new line and the spaces used for indentation are characters that you can overlap.
To get rid of them, close the tag immediately:
<textarea name="bio"></textarea>
In addition, the kind of layout of the form that you are going to use should probably be done using tables - at least until various shiny new CSS3 layouts are better supported. Your avoidance of them actually made the code less readable, which with all <br/> s.
source share