It's not common to find all these skills in a single person, though there are many excellent single-person website designers.
Experience is a great teacher.
You can learn HTML from a book or a community college course. Once you've mastered the basics of HTML, take a webpage that you admire, and try to recreate it on your website with your own graphics. You'll learn a great deal this way. Volunteer your growing talents to a non-profit organization to build their website, and try to get an internship or entry level job at a local website design shop to gain experience. We respect your privacy and never sell or rent our newsletter subscriber lists.