First up, there's no reason why you can't combine DW template files with CSS to get the best of both worlds.
Originally Posted by JenniferBigBlue
Second, you're tied in to using a particular platform there - Dreamweaver. CSS is independent, and so you can use whatever software, frameworks and templates are best at any time, you aren't stuck with using the same one for ever more just because that's how you built the site in the first place.
Maybe not many people in your target demographic are still using dialup, but have you tried accessing most major websites on a mobile phone? Even a supposed exemplar of good practice such as Sitepoint ( :p ) is painfully slow. Streamlining the code (and getting rid of the rubbish) makes a massive difference.
2) Faster Load Times Because of Lighter Code Ė I remember load times being a major issue when I first got started but it doesnít seem to be the case anymore with so few people on dialup.
It's more about making the content independent of the means of delivery. With a CSS-based layout, you can write different stylesheets that present the contents differently for full-size screens, mobile devices and when printing. That ensures that your surfers always get the page set out in the most appropriate way, for whatever media they are using. It is much harder to do that effectively if you have a table-based layout.
4) Separation of Style and Content Ė I guess this one is related #1, ease of updating?
All too often, table-based designs are not easily adaptable. I remember years ago, after inheriting a table-based design, I needed to add another item to the middle of the navigation menu. In a CSS design, it's as simple as adding <li><a href="/page.htm">Page</a></li>. In this particular tabular monstrosity, it involved relaying half of the page, because of the way the cells in that section were tied with cells elsewhere on the page.
This is what Dreamweaver template files do. It separates style from content (editable/un-editable). I donít know about you, but generally speaking what my clients want most often is to update the content. I donít understand why it would be easier to update content using CSS more so than tables. (Remember, I DO use CSS for formatting.) If they want to tweak something in the design, again, piece of cake to do. Just change the template file. Itís not hard.
That is unlikely to be an issue if you're using templates and CSS for formatting.
5) Greater Consistency Ė If you use template files and CSS, where is there inconsistency?
That isn't much of an issue these days. The current raft of browsers are all pretty consistent in the way they handle CSS, and most of the variations these days come about when authors use browser-specific implementations of draft CSS3 features. Yes, there are still some pitfalls around IE6, but using a Strict doctype will avoid many of these, and you aren't immune from problems if you use a table-based layout either.
1) Inconsistent Browser Support - Different browsers will render CSS layout differently as a result of browser bugs or lack of support for various CSS features.
My take is that you're coming at it backwards. Rather than thinking about it as 'converting' a pre-existing design to HTML+CSS, you need to think about building a website in a different way.
Personally, if I could instantly convert a design into HTML, Iíd do it.
The foundation of a website is its contents. Start with that. Basic text, wrapped in <p>s. Headings, marked up with <hx>s. Navigation lists, marked as <ul>s. And so on. A bare-bones plain text page, of the sort we used to see back in the early 90s. Then you can think about the layout and the design. Where do you want this bit to go? Where do you want that bit to go? What styling do you want there? Build it from the ground up, and you'll get a much more flexible design than if you try to painstakingly replicate a layout that was never right for the medium in the first place.
Where too many designers - particularly those from a print background - go wrong is that they don't fully appreciate what the medium of the web is all about. They think it's just a visual representation of a page, when it really is much more than that. A good web page is ultimately flexible. And by that, I don't just mean that it has a fluid layout that adapts to different viewport sizes, I mean that it can work in different ways. You can streamline it and get rid of the cruft for printing (who needs a clickable menu on a printed page?). You can linearise it to work better on a mobile phone - and take out some of the more resource-intensive components as well. You can allow people to apply their own custom stylesheets to meet whatever visual or cognitive needs they have (eg large text, single column, colours and backgrounds). They can read it and navigate around it using a speech synthesizer.
Originally Posted by JenniferBigBlue
Most table-based layouts don't make any of that easy, or often even possible. The more complex the layout, the more likely that when it is linearised (by a speech synthesizer, a mobile phone, a search spider, or someone trying to highlight the text to copy and paste it into another application), it all goes haywire, and you find that the contents doesn't follow a logical sequence from start to end, but jumps around all over the place.
Being a good web designer requires a range of skills. You need to understand HTML code, CSS and the way they work together. You need an eye for visuals and graphics, for colour and shape. You need to know the technological constraints and opportunities the medium has. Different people come to web design from different routes, different backgrounds and with different skill-sets. They can all be equally valid starting points, but that's what they are. A truely good web designer will take the time to learn all of those skills; anything less and you won't be doing the best job you can.
It depends what kind of a job you want to do. If you're satisfied with "OK, it does the job, just about, for most people" then by all means stick with tables. But if you want to do what is best for your clients and their visitors then you need to learn how to put those tables behind you.
Maybe the decision to go CSS or table depends on who you are, how you like to work, and who your clients are.