Forum Moderators: phranque

Message Too Old, No Replies

Hybrid CSS/Table layout drives me CRAZY!

         

jfred1979

3:41 pm on Oct 6, 2003 (gmt 0)

10+ Year Member



I am very frustrated here. I am really trying to establish a consistant method that I use when creating a site, and I just can't decide which side of the fence I'm on with the whole CSS vs table layout thing. My current approach is basicly to hack to together a hybrid of CSS and tables until I reach something that is acceptable cross-browser. What I end up with is usually far worse than if I used a purely CSS or purely table layout. I'm definitley more comfortable creating "design-oriented" sites (creating templates in Photoshop/Fireworks and then slicing them into tables) but the little angel (or devil not sure which) on my shoulder always reminds me of the advantages of using CSS. But if I create a CSS layout I usually test is on NS 4.x and get horrible results which sends me right back to the table layout. Lately I've found myself changing my layout method several times during a project which really takes up valuable time. I really like the idea of using pure CSS layouts from the beginning then just presenting unstyled content to NS 4x (like csszengarden.com) but when I look around the web I see so few people actually doing this that I would find it hard to justify to a client the first time they complained that the site wouldn't render properly in an older browser. What should I do here? The hybrid method is drving me crazy!

RammsteinNicCage

4:16 pm on Oct 6, 2003 (gmt 0)

10+ Year Member



I don't present unstyled content to NS 4.x users because I practically don't have any. It depends on what type of people are viewing your site... if you have a lot of NS 4.x users, then maybe unstyled content or even just sticking to tables would be a better idea, otherwise I'd say go with the full css layout.

Jennifer

SuzyUK

4:25 pm on Oct 6, 2003 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



Go Full CSS - well I would say that wouldn't I ;)

Seriously, use the @import method to make sure NN4 doesn't get it.. then if you really want to present them with some sort of styling, colors backgrounds etc.. just make a seperate stylesheet for it and call it (before the @import) using the <link rel> method..

might help keep your clients happy if you feel that's going to be a problem..

For the record: I don't give NN4 styles, unless specificaaly requested to by a client

Suzy

tedster

4:34 pm on Oct 6, 2003 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



I feel your pain jfred1979 -- the pure css layouts I've created to date also can sometimes blow up on IE5 macintosh and other mac browsers as well, unless I keep them very basic. And macintosh IE5 tends to be 5% of users or more on many sites.

One of those sites has been online since March and I just got my first NN4 complaint this week. Of course the client was a bit miffed, so I pitched them what I would charge for NN4 functionality. The price tag convinced them that I had made the right decision in forgetting about NN4. We just serve NN4 a totally unstyled page, and that means some information is a bit out of order, hence a bit confusing.

But the mac is another situation, much more important, and often overlooked by web developers who work on a PC.

There's a darned good reason we need standards instead of monopolies!

Filipe

2:12 am on Oct 7, 2003 (gmt 0)

10+ Year Member



I find CSS/tables hybrids to be very clean and reliable websites. Ultimately, there's very little advantage to having a full CSS-only website if you're going to save yourself a lot of headaches by using tables. Not as if the users are going to notice -- though they'll certainly notice if there's a glaring ugly portion of your site.

I can't see why it would make things MORE complex though. It's often as simple as:


<html>
<head>
<title> A Page </title>
<link href="styles/global.css" ...>
</head>

<body>
<table>
<tr>
<td colspan="2" id="nav"> ... </td>
</tr>
<tr>
<td id="left_column"> ... </td>
<td id="content"> ... </td>
</body>
</html>

Then you just define all the properties of the page (font, colors, sizes, widths, heights) in another page. It's much cleaner than the alternative, believe me.

However, straight CSS would be even cleaner, but it would come with some serious headaches.