Using Tables Instead of CSS

M

Matt Beckwith

I was determined to eliminate all tables and frames from my site, except for
those tables which are appropriate as tables.

But it was way too frustrating trying to format left and right areas using
CSS. Inside the body no big deal. But inside smaller areas, it got really
weird.

The problem was, I would get it formatted just fine using my Opera browser.
But the same web page was all over the place in Internet Explorer. So I'd
have to do separate klugey things for the Internet Explorer formatting.

Bottom line, I think it's better to use tables for laying things out
side-by-side on a page, at least until such time as all the browsers
implement CSS the way it was intended to be implemented.

Matt Beckwith, M.D.
http://drbeckwith.com
 
H

Headless

Matt Beckwith said:
Bottom line, I think it's better to use tables for laying things out
side-by-side on a page, at least until such time as all the browsers
implement CSS the way it was intended to be implemented.

CSS requires a higher skill level than tables.

That site is no excuse for not using CSS, get a pro to do it properly
for you. Given the simple nature of your site, it shouldn't cost a lot.
Currently there are serious issues with that site that need addressing.


Headless
 
D

DU

Matt said:
I was determined to eliminate all tables and frames from my site, except for
those tables which are appropriate as tables.

But it was way too frustrating trying to format left and right areas using
CSS. Inside the body no big deal. But inside smaller areas, it got really
weird.

The problem was, I would get it formatted just fine using my Opera browser.
But the same web page was all over the place in Internet Explorer. So I'd
have to do separate klugey things for the Internet Explorer formatting.

Bottom line, I think it's better to use tables for laying things out
side-by-side on a page, at least until such time as all the browsers
implement CSS the way it was intended to be implemented.

Matt Beckwith, M.D.
http://drbeckwith.com

I strongly disagree with your opinion for many reasons which I won't
explain here and I'm sure others will disagree after viewing your homepage.

To begin with, MSIE 6 for Windows is much more W3C web standards
compliant when using a full doctype declaration to trigger strict
compliant rendering mode. Margins is applied accordingly to block-level
elements in MSIE 6 for Windows in strict compliant rendering mode.

Second, many websites now show demos, templates regarding what you were
trying to do and they do it with validated markup code which render
accordingly in MSIE 6 for Windows and in other W3C web standards (HTML
4.01 and CSS1) compliant browsers.

Columns:
http://www.xs4all.nl/~apple77/columns/

CSS Layout Techniques: Look Ma, No Tables.
http://glish.com/css/

CSS Tableless Sites
http://www.meryl.net/css/

DU
 
D

DU

Matt said:
I was determined to eliminate all tables and frames from my site, except for
those tables which are appropriate as tables.

But it was way too frustrating trying to format left and right areas using
CSS. Inside the body no big deal. But inside smaller areas, it got really
weird.

The problem was, I would get it formatted just fine using my Opera browser.
But the same web page was all over the place in Internet Explorer. So I'd
have to do separate klugey things for the Internet Explorer formatting.

Bottom line, I think it's better to use tables for laying things out
side-by-side on a page, at least until such time as all the browsers
implement CSS the way it was intended to be implemented.

Matt Beckwith, M.D.
http://drbeckwith.com


"All of the properties, values, and features defined in the CSS, Level 1
(CSS1) specification are supported, including the box model that defines
how to measure and format elements and their associated margin, border,
and padding properties."
http://msdn.microsoft.com/library/en-us/dnie60/html/cssenhancements.asp

According to Netscape DevEdge, MSIE 6 for Windows supports 96% of all
CSS1 properties. And the one missing, borderSpacing, is not even a CSS1
property on top of that.
Browser feature detection
http://devedge.netscape.com/toolbox/tools/2001/feature-detection/

There are still bugs in browsers but for a large, very large part, CSS1
properties and DOM1 properties and methods are very well supported by
MSIE 6 for Windows, Opera 7, recent Mozilla-based browsers, Konqueror,
Safari, and other W3C web standards compliant browsers.
The main challenge remaining in the very large majority of cases is on
the web developers' side: it is to code accordingly webpages (and that
implies using a full doctype declaration) and to validate markup and css
with validators.

DU
 
L

Lauri Raittila

I was determined to eliminate all tables and frames from my site, except for
those tables which are appropriate as tables.

But it was way too frustrating trying to format left and right areas using
CSS. Inside the body no big deal. But inside smaller areas, it got really
weird.

The problem was, I would get it formatted just fine using my Opera browser.
But the same web page was all over the place in Internet Explorer. So I'd
have to do separate klugey things for the Internet Explorer formatting.

I can see no reason whatever why there would be problem on you pege
assuming you aim similar look.
Bottom line, I think it's better to use tables for laying things out
side-by-side on a page, at least until such time as all the browsers
implement CSS the way it was intended to be implemented.

Well, in your case that is not true.

Is that overflow intended? And that super small serif font? (I had
forgotten to set my minimum font, and it looked something like 5px - not
that I like 9px serif anyway)
 
A

Adrienne

Gazing into my crystal ball I observed "Matt Beckwith"
I was determined to eliminate all tables and frames from my site,
except for those tables which are appropriate as tables.

But it was way too frustrating trying to format left and right areas
using CSS. Inside the body no big deal. But inside smaller areas, it
got really weird.

The problem was, I would get it formatted just fine using my Opera
browser. But the same web page was all over the place in Internet
Explorer. So I'd have to do separate klugey things for the Internet
Explorer formatting.

Bottom line, I think it's better to use tables for laying things out
side-by-side on a page, at least until such time as all the browsers
implement CSS the way it was intended to be implemented.

Matt Beckwith, M.D.
http://drbeckwith.com

Your site has some other serious problems, the most glaring of which is
the lack of the alt attribute in your image elements. The page has no
Document Type. The page also has no real structure, no heading elements,
etc.

Here's what the W3 validator had to say (be sure and read the Outline bit):
http://makeashorterlink.com/?W24414355
 
D

DU

Jukka said:
Do you take such a statement (by Microsoft) at face value?

In this case, as worded, I would say it is a fair statement. I'm not
referring to bugs here: there are CSS1 bugs in MSIE 6 for Windows but,
as I said, the CSS1 properties are supported.
So how reliable is that material, if they don't even know what CSS1 is?
But seriously, that material _only_ checks what property _names_ (as
mapped into DOM) a browser _recognizes_.

True. It can't measure how well the support is with test cases but at
least it returns a basic measurable value on this issue which can serve
as a beginning of a discussion or serious testing.

This says absolutely nothing
about the actual support. It's actually much worse if a browser
recognizes a property and implements it wrong than if it does not
recognize it

I actually agree with you on this. When a browser does not implement a
property, then you're not disappointed in the sense that you know what
to expect while a browser claiming to support a property when it fails
lots of testcases or it is very slow is disappointing and irritating.

- the latter is something that a competent author is
always prepared to, along with the principle that CSS is just optional
presentational suggestions.

And IE 6 fails to support fixed positioning, for example.

.... which is a CSS 2 property.

This is
relevant in many situations where one would like to replace layout
tables or frames by the use of CSS. It also fails to support max-width,
which is the simple answer to the question "how to prevent my text from
extending across the screen, still allowing users to view it on small
screens too" - a question that is now addressed by authors by using
various tricks and kludges, including table layout.

My post was referring to CSS1. I'm not diminishing the importance, worth
of other css properties but my post was targeting a simple issue: CSS1
properties and DOM1 properties and methods are very well supported in
MSIE 6 for Windows. Obviously the OP is exaggerating in the other sense.
I'm convinced the OP does not need a complex layout or some acrobatic
CSS coding and no cross-browser code.
In the OP's situation, however, CSS could probably be relatively easily
used to replace layout tables. It's usually _simpler_ to do that for
small areas inside a page than for a page as a whole. And probably the
strategy should start from redesigning the pages, starting from a
version that uses _no_ CSS and _no_ presentational features of HTML.
This gives the rock solid starting point and creates the ultimate
fallback that makes the page accessible. Then start adding
presentational suggestions, probably leaving positioning last, since
things like colors and fonts and borders are simpler in practice. (CSS
positioning is relatively simple per CSS; it's the complicated
descriptions, poorly chosen terminology, and especially buggy browsers
that have made it difficult.)

DU
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,777
Messages
2,569,604
Members
45,228
Latest member
MikeMichal

Latest Threads

Top