This one goes out to all the people who have been asked to change the way a SharePoint site looks. Management wants to know how long it will take, and you can whip that out by tomorrow, right? If you don't have time to prepare a treatise on what's involved, or if you just want to lend some extra weight to your case by quoting a blogger who was an MVP for seven years, then dive right in; this post is for you.
There are three main components of SharePoint visual customization:
1) Theme – A theme encompasses all the standardized text formatting and coloring (borders, fonts, etc), including the background images of various sections. All told, there could be around 50 images involved, and a few hundred CSS (style) classes. Installing a theme once it’s been created is no great feat. Given the number of pieces, of course, creating a new theme could take anywhere from a day to a week… once decisions have been made about the desired appearance.
3) Individual page layout – Each page (ideally) uses a master page for its template, but within the content areas defined by the master page, web parts can be added, removed, and configured from within the browser. The wireframe that Brent provided could most likely be completed simply by manipulating the content on the home page in this fashion, and we had allowed about a day of effort for the task. If needed, further functionality can be provided by an experienced ASP.NET developer; custom forms are a common example. This of course is a bit more in-depth than simple content manipulation and could take several days per page (or more; there’s really no way to quantify this without a set of requirements).
That’s basically it. To recap: Fonts and coloring are done with themes, and can take anywhere from a day to a week to create (not counting creative time); required technical skills include HTML, CSS, and image manipulation. Templated layout is done with master pages, and generally requires a developer familiar with both ASP.NET and SharePoint in particular; it can have far-reaching consequences depending on the complexity of the changes, and could add weeks or months to a project. Page layout can be as simple as content manipulation in the web browser, taking a few hours per page, or it can involve more detail, like custom forms, and can require programming expertise and significantly more development time.
Yes, you can do this with an Event Receiver. You might be able to do it with a VS workflow, or possibly one of those fancy third-party tools... maybe not. But if you're a SharePoint admin with nothing but SharePoint Designer and you need to determine if a field changed, here's how.