For the sizing, I'm going to point you to
a very interesting article over at A List Apart. In particular, experiment a bit with the vh and vw measurement units (they're percentages of the viewport height and width, respectively), so you can create something that's "pixel perfect" if you want, and still have it scale to different browser sizes. Alternatively, you can use a max-width setting, which will let narrow browsers wrap text and so forth naturally, while preventing the page from getting uncontrollably wide on very large screens. (Taking a little tour around
A List Apart and
Smashing Magazine ought to give you a lot of information and ideas.)
I'm not sure why there's such a drive to WordPress (or Drupal or Joomla) around these parts. For most sites, they're overkill in a big way. WordPress started out as a simple blogging platform, but it has grown (like the others) into a full-blown Content Management System — and that's great if you have (or plan to have) enough content to warrant "management". There is nothing wrong with static HTML sites, nor with much simpler programmatic content sites (lightweight blogging platforms, etc.). In fact, you can do more with less if you avoid using a CMS (and you almost always get better HTML out of the deal). Honestly, I think a lot of the attitude comes from never having maintained a high-traffic site. A CMS is great if you have a lot of contributors and a publishing workflow (edits, approvals, etc.). A blog is great if you have frequent updates you want to display in reverse chronological order and want a lot of feedback (and spam). If your content is mostly static (few, irregular updates), then a static site (or a program that generates static pages) more than fills the bill.
Let's say, for a moment, that you "hit the big time". Well, that usually involves a boatload of fame and interest right off the bat, but your real income doesn't get a whole lot bigger for quite a while. You can easily sustain a whole big boatload of web traffic on free or low-cost* paid shared hosting using static files (or small, fast scripts). With something like WordPress (or another CMS), each page view requires loading an eye-watering number of script files on the server, then making a boatload of database queries to get the content for the page. It doesn't take too very many visitors before you really need to step up to a much more powerful server (or server
s, often numbered in the dozens), and that can mean a whole lot of money gambled on the temporary buzz made by a single that hasn't actually paid you a dime yet. You'd need to go from zero to Justin Beiber-level popularity in a day before you get into trouble with static files (especially if the media stuff is on-demand). The server does next to no work for each request, so it can very quickly handle one and move on to the next.
As for the contact form, it's very easy to put one together using PHP (a scripting language that's available on almost every host, especially the low-cost and free ones like x10Hosting). You may want to rethink the email part, though. It's easy enough to do the email, and it may make some sort of sense when you're a "local artist", but if/when you become anything more, that can mean that your
real email gets completely drowned out by fans (and the inevitable haters). For almost all purposes, sending the contact form information to a database is a better idea. You can read and reply to the messages from a private area of your web site and, if necessary, allow "your people" to help you handle a flood of messages without having to give anybody access to your email. (It doesn't matter how fan-centric and idealistic you may be, if it should ever happen that you get thousands of messages in a day because something you recorded touched a lot of hearts, you're going to have an awful lot of trouble responding to them all, even with help.) You can always have a scheduled script (a "cron job") send you an email every day (or what have you) if there are new messages to read/respond to, and meanwhile your email will still be useful for your actual friends and associates to use. There are a boatload of PHP scripts out there for email contact forms (several of them in the "Programming" subforum here), and if you want help with the database version, you can always PM me (it's a very simple thing
if you've done any programming before).
Just as an aside, disabling right-clicks (and selection/drag) doesn't really work — it's just annoying to have to disable the oncontextmenu handler to view the page source outside of the debugger/developer tools (and some browsers allow it to be disabled by default). It's healthier to simply assume that if it's on my screen, I can have it. Or, rather, that I've already got it. (I've seen people do some pretty clever and complicated things over they years to try to get around that simple fact, including translating images pixel by pixel into background colours for table cells and setting the cells to 1 pixel high and wide with no borders, spacing or padding. ALT + PRT SCR gets right around that. And the text tricks some people use — images, using monospaced fonts and putting every other letter of a different layer, etc. — can all be gotten around using OCR.) In other words, the best you can hope for is to keep honest people honest while making things a little more difficult than they have to be for people who might be trying to help. I don't know whether you added the
oncontextmenu="return false" onselectstart="return false" ondragstart="return false" yourself or whether it came from your editor's default settings, but it's nothing more than "security theatre". Oh, and it means that opening links in new tabs/windows can be difficult (not everybody has a middle mouse button handy).
There's only one remaining niggle, and that's in the stylesheet: are you sure that "cursive" is a good fallback font for Tahoma? I'd go with sans-serif, myself.
All in all, it's not bad. There are things I'd do differently, but then I'm more hard bop jazz than country/rock, so what do I know?
_________________
* The basic Premium plan here is $3.95/month if you pay for three years up front ($142.20) and includes a domain name, and you can transfer your free account by checking a box on the form. It's pretty easy to come up with that kind of money when you have to. To get the same level of performance using a CMS instead of static files, you'd probably need to step up to the higher tiers of Infinity+ service.