EDIT: Basically what Oli said, but more verbose. Read on if you like.
If you can estimate how long a site will take, just decide on your hourly rate - which should depend on your skill, experience, and self-assigned value. If you think you're worth $10/hr. charge that. If you think you're worth $50/hr. then charge that. And so on.
Multiply by your estimated time expenditure on Project X and quote the client that.
Say a given project will take, oh, 40 hours (like a normal work week, for instance). And you've decided that your rate is $20/hr. That comes to $800. You might throw in a bit more for incidental costs - sort of a "client keeps asking for changes" fee.
This is a decent article on jumping into freelancing.