There are two issues: Behavior is browser-dependent, as the tests below reveal.  In all cases, if the user enters a hard return, it is both displayed on the screen that way (one moves to a new line) and a hard return is transmitted to the server.  The issue with the wrap attribute is what happens when the user types without entering a hard return.

1. Default behavior -- no specification concerning wrap


In IE6 and Netscape 6, the text displays wrapped but it not transmitted to the server that way. In Netscape 4.7, the text does not display wrapped, nor it is transmitted to the server that way.

2. Attribute wrap=virtual


In IE6 and Netscape 6.2, the behavior is the same as the default behavior described above. In Netscape 4.7, the behavior is  the same as in IE6.

3. Attribute wrap=physical


Behavior seems the same as virtual.  However, several references (Web Design in a Nutshell and HTML: The Definitive Guide) suggest that each new line should be transmitted with a hard-coded carriage return

4. Attribute wrap=off


In IE6 and Netscape 4.7, text does not wrap in the display but in Netscape 6 it does. 

5. Attribute wrap (no value specified, as in HTML Visually)


In IE6 and Netscape 4.7 and 6.2, behavior is the same as wrap="virtual"

Revised: February 18, 2002