The purpose of a <form> element, IMO, is semantic not presentational - the element is there to define an area with elements which can be sent to the server.

Why then, does the browser (and, I assume in the spec), specify display:block in the user agent stylesheet? Surely, if you want to have the form be a block, you can just wrap it in a div element?

Usually, I just put form { display: inline } into my css to override this. Still, I'm wondering if there was a good reason for making the <form> display as a block by default, or if it's just been kept that way for legacy reasons.

Edit
Report