Tableless CSS web design?
We received this email:
Sir or Madam, Quite an impressive display of sites. I am a student, studying computer science, and have a question for your designers. What are your designers' opinion on the trend towards tableless CSS designs, and the idea that all formatting should be removed from the content. I noticed that the source of some of your sites use tables for the layout. I disagree with my professors, as he believes tables are, for a lack of a better word, "evil". I use some css for site design, but sometimes find the pressure to use all CSS can drag out completion time in order to hack my way around browser limitations. If you would share your well-qualified opinions, I would be most appreciative. Have a blessed day, Matthew L.Ah, good question. Truth is you and your professor are both right. From a theoretical standpoint, there are some very good reasons to strive for total separation of design and content, particularly if the data will get reused in other media. However, in practice, browser rendering engines have quirks that take hours of extra development time to work around to achieve CSS only design. Most of the sites we design, do have tables (we work to minimize the use of tables and superfluous markup). We have done some that are CSS only. The CSS sites take, on average, 3x as long to code and test across browsers. Given we live in the world of dollars and cents, most of our clients cannot cost justify the additional cost of CSS only design. In addition we build all our sites to be accessed by visually impaired web users. One feature of accessibility is the ability for the user to resize text. This causes most CSS only designs to place text on top of each other. Tables work great to prevent overlapping of variable size text. When all major browsers universally interpret CSS the same way, we will move to full CSS. That is the difference between the academic world and business, for clients you have to get a positive ROI. It is similar to why most of our programming is in PHP. Years ago we did Java programming (we have also done projects in ASP & ColdFusion). Java and J2EE is a very in lighted development environment. We even use to lecture about separation of data, business logic, interface logic and creative. "The way of the future", we proclaimed. Then the .dot com bubble burst. Despite Java being a near perfect language from a programming theory standpoint, the truth is it's complicated and you don't need that kind of horsepower for most applications. In practice, PHP is much faster/less costly to develop. Back in my Java days, I described weakly typed, hacker languages such as Perl and PHP as "Evil" also. Funny how a recession can make you look more practically at things. That being said, it is good your professor is making you do it the academic way. When we hire, we look for people with strong theoretical backgrounds. School should be more about learning how to think then the practicalities of the real world. Good luck with your studies!