HTML:
<p style="background-color:green; padding: 30px;">Hello</p>
Usually you can write that into an HTML file, render it, and copy the email from the browser into Gmail's compose pane.
<div>
and style that. Thought it could also be that you meant bgcolor
and not backcolor
...
Google does not support this feature: (Source)
Please note that Gmail doesn't recognize HTML tags inserted in the body of a message
However, it might be possible with an external 3 party application such as Outlook or ThunderBird.
Outlook 2003 or earlier had option to send HTML via File > Send > Page by Email. However, Microsoft have removed this feature for security reasons in Outlook 2007 and 2010. Here is an article that explains Microsoft's actions. There is a 'grass-roots effort' to get this feature added back Outlook. For more information about his movement visit FixOutlook.org.
Body is not an acceptable tag in gmail, and most email clients disregard backgrounds unless they're in divs.
There's a great resource on the subject of what email clients support and don't support called the Email Standards Project.
As for entering html in gmail, you're going to have to do the copy paste thing that digitxp said, but don't include the html, head or body tags, just the content tags.
I think you should use a client that lets you write HTML email and set it up to use your gmail account. I don't think you can do it from Gmail's web interface.
Sending HTML email with Outlook express and Thunderbird: http://webdesign.about.com/od/intermediatetutorials/a/aa050800b.htm
Not sure how to directly input HTML in an email using outlook.
Gmail does not support HTML natively but it is possible to do so via Chrome extensions.
I love this one: Free HTML Editor for Gmail.
In gmail web client, the easiest way to click on Rich formatting >> that would open up the formating tools and select whatever formating your want instead of composing it somewhere else and pasting it.