Hi Madeleine, I am so sorry I missed this thread! It's funny, I'm finding all kinds of interesting questions that I didn't get a chance to answer late last year because of the birth of our daughter

Now I'm playing catch up!
So, please forgive the late reply - but here's my take on this:
I charge for websites hourly because the scope of a project like this is certain to change many time during the development of the project. Clients decide they want more pages, special features, custom coding, a fancier menu, etc. etc. and you'll wind up working twice the hours you had planned, but if you've quoted a bid based on the project without accounting for scope-creep then you're going to end up workign for free. So - I always recommend billing hourly.
There are the sometimes-projects that are more cookie-cutter that you know will only take X hours and in those cases I might offer a flat price with the stipulation that anything above and beyond is billed additionally.
All of my clients are responsible for their domain registration and hosting account payments. It's important to me that they have their own credit cards and contact info connected to their sites - I've seen some nightmares regarding site ownership or forgotten deadlines when it came time to renew a domain and I prefer to avoid those potential pitfalls. Of course, you can help them get set up with a domain and hosting, and as a service provider that's just something that comes along with the project.