Is it worth using CSS?

liunx

Guest
I've been building a commercial site. Most of the information is tabular data. It must work on a large range of browsers (down to Netscape 4.7 and IE4.0) and look more or less the same across browsers. I didn't have much time or the requisite knowledge so I committed what many of you consider a sin - I've been using tables for layout.

Well after surfing through many pages on CSS, I finally stumbled upon a site that has solutions for multiple column layouts on Netscape 4.7 (<!-- m --><a class="postlink" href="http://www.fu2k.org/alex/css/layouts/3Col_NN4_AR.mhtml">http://www.fu2k.org/alex/css/layouts/3Col_NN4_AR.mhtml</a><!-- m -->)

I was so overjoyed... and then I read the source. It's full of hacks! To use it to create the layout I want could prove to be a real hassle.

So... is it worth using CSS considering the extra effort you must put in to make it work? If so, why? Also, does anyone have a solution that will work without hacks?no, tables are for displaying data? blah blah blah, I DONT CARE! its displaying the data/content of my site

(btw i use tables sometimes for layouts too)Originally posted by careyf
I've been building a commercial site. Most of the information is tabular data. I find that hard to believe; are you sure? Tabular data is things like spreadsheets, calendars, etc. — a site layout is, indeed, not tabular data which you may or not yet be aware of.Originally posted by careyf
It must work on a large range of browsers (down to Netscape 4.7 and IE4.0) Define "work on". I would suggest using as much CSS as you'd like to get the layout looking good in browsers that have excellent support for Web standards (e.g., Mozilla, etc.). Now, even if it doesn't look quite the same in an older browser (e.g., Netscape 4.x, etc.), the fact that you're using Web standards ensures the content is still accessible. Don't want Netscape 4.x to mangle the CSS? Use an @import rule to hide the stylesheet from Netscape 4.x and other old browsers.Originally posted by careyf
and look more or less the same across browsers.That shouldn't be very hard as most modern browsers have rather decent CSS support, however, as you may have noticed by now — support does, indeed, vary.Originally posted by careyf
I didn't have much time or the requisite knowledge so I committed what many of you consider a sin - I've been using tables for layout. That's quite correct. Tables for layout isn't good at all. It isn't good for the end user — it isn't good for accessiblity — it isn't good for you. Bandwidth wasted; messy code management; poor semantics — the list goes on. CSS for layout is the only way a layout should truly be created as far as I'm concerned. Using tables for layout (and other incorrect usage) is only hurting yourself and possibly others. I would strongly recommend you read this excellent article: Why tables for layout is stupid: problems defined, solutions offered (<!-- m --><a class="postlink" href="http://www.hotdesign.com/seybold/">http://www.hotdesign.com/seybold/</a><!-- m -->).Originally posted by careyf
Well after surfing through many pages on CSS, I finally stumbled upon a site that has solutions for multiple column layouts on Netscape 4.7 (<!-- m --><a class="postlink" href="http://www.fu2k.org/alex/css/layouts/3Col_NN4_AR.mhtml">http://www.fu2k.org/alex/css/layouts/3Col_NN4_AR.mhtml</a><!-- m -->)Indeed, that is interesting (especially because it works in Netscape 4.x). However, I would recommend you focus on the accessiblity aspect as opposed to the visual aspect. While the layout may not look exactly the same in Netscape 4.x using more modern CSS, the content will still be accessible — and if, the markup has meaningful semantics — the page will still be perfectly readable — with CSS or not.Originally posted by careyf
I was so overjoyed... and then I read the source. It's full of hacks! To use it to create the layout I want could prove to be a real hassle.Absolutely. Hacks aren't a very good idea to use. And, when used, should be used quite sparingly — if at all.Originally posted by careyf
So... is it worth using CSS considering the extra effort you must put in to make it work?Definitely. CSS will only make things easier for you.Originally posted by careyf
If so, why?If you read through the article I previously linked to, it'll answer that question quite good. ;)Originally posted by careyf
Also, does anyone have a solution that will work without hacks? I sure do: <!-- m --><a class="postlink" href="http://www.pixy.cz/blogg/clanky/css-3col-layout/.Originally">http://www.pixy.cz/blogg/clanky/css-3co ... Originally</a><!-- m --> posted by 96turnerri
its displaying the data/content of my site Which is entirely incorrect; semantically or otherwise. Tables are for tabular data — a site layout is not tabular data. Tables are and should be used only and only for tabular data. As aforementioned, tables for layout is only hurting yourself, and others (i.e., the end-user). Longer page rendering and loading times? Poor accessibility? And a lot more. Doesn't sound very good, now does it? I'd say you should really consider reading through the article I previously linked to as well.Originally posted by fredmv
I find that hard to believe; are you sure? Tabular data is things like spreadsheets, calendars, etc.
I'm absolutely certain. Its primary purpose is to give certain people access to information in a database. A web application rather than a website I suppose.

Define "work on".
Well it needs to correctly handle the data and it must follow the page spec as closely as possible on all the browsers we have stated we support. It must look professional. Most multi-column CSS layouts I've seen look atrocious on old browsers.

Use an @import rule to hide the stylesheet from Netscape 4.x and other old browsers.
Do you have an example of this that I can follow?Originally posted by careyf
I'm absolutely certain. Its primary purpose is to give certain people access to information in a database. A web application rather than a website I suppose.Ah, I see. Well then, if you are using tables to lay out tabular data then I don't see any problems there — and you shouldn't need to use much CSS either due to the fact that the layout won't actually depend on it.Originally posted by careyf
Well it needs to correctly handle the data and it must follow the page spec as closely as possible on all the browsers we have stated we support. It must look professional. Most multi-column CSS layouts I've seen look atrocious on old browsers. You mentioned pure CSS-based multi-column layouts — yet you're using tables to lay out the tabular data. Thus, you shuold not need a multi-column CSS-based layout for tabular data, since that is, of course, what the <table> element was created for.Originally posted by careyf
Do you have an example of this that I can follow? Absolutely; consider the external CSS stylesheet's filename was foo.css. It could then be referenced like this:<style type="text/css">
/*<![CDATA[*/
@import url(foo.css);
/*]]>*/
</style>
 
Back
Top