View Full Version : Why not use tables for this site.

Sep 3rd, 2010, 10:15 AM
I am thinking of using tables instead of javascript for this site. (http://www.exitfegs.co.uk/Sources.html) After all, the three columns are tabular and it seemsto me to be acceptable.

What do you think. Is it an acceptable use of css3 table divs?:o


Sep 3rd, 2010, 02:34 PM
Has nobody any thoughts about this. Surely the three columns are tabular.


Sep 3rd, 2010, 03:40 PM
Hi Frank

I wouldn't personally use tables. I don't like tables but...

I think tables are acceptable when you know your audience, be it local (as in your case) or widespread and you can at least reasonably predict where they're likely to be coming from. In some cases, I think it's more about knowing your own demographics than worrying about unquantified accessibility issues.

If you're unsure of getting your CSS positioning consistent, then tables might be the best way for you.

Dr. V

Sep 3rd, 2010, 03:57 PM
Has nobody any thoughts about this. Surely the three columns are tabular.


I have many thoughts on it. Expressing them right here and now might spark a debate and I haven't had time to weigh up the precise usefulness of that, with regards to your present dilemma.

Suffice to say, I wouldn't allow the more rhetorical current wisdom, so to speak, to influence your decision - but the things that matter most to you and your site.

As for Javascript, I can't think what advantage it would have over CSS positioning - or tables, for that matter.

Dr. V

Sep 3rd, 2010, 09:01 PM
I am at the moment using javascript for equal height columns. I want to go as fully into CSS3 as I can. Just for the hell of it. I am not interested in yesterday's technology. Today and tomorrow are much more in my sights.

Yesterday is history, and I always did hate history. It is a closed book.


Sep 3rd, 2010, 10:28 PM
Go for it. I would like to see new CSS elements in practice.

Sep 4th, 2010, 01:39 AM
Sorry, I don't quite understand something. If you intend to go 'deeply into CSS3' then why are you talking about using tables for those columns?

Dr. V

Sep 4th, 2010, 04:59 AM
Frank; I don't consider that page to be showing tabular data. Columnular/columnar maybe but not tabular. That you have put it intot a tabular-like style doesn't make it tabular.

I would tend to use a <dl> tag - for definition lists - like for a dictionary.

you can have it with

<dt>Semantics and Positioning</dt>
<dd>*Position your Div where you want it.</dd>
<dd>*Fix Your Site With the Right DOCTYPE!</dd>

You will probably still want to show them in columns which willl require a method of styling so they are the same length. use JS or uss css ~ it's up to you.

To answer your question, however, I don't think it's correct to use tables.

@DR Varney: can you post the link you got in an earlier thread, to show how equal cols can be achieved with CSS2. and no JS. I'm sure Frank would appreciate it.

SPOOKY!! I found the link, which I seem to recall Frank posted in the past week or so. :eek:


Sep 4th, 2010, 07:20 AM
I am trying to use CSS3. The div is made using display:table; and display:table-cell;

This is what about.com has to say about it:-

Your Contents Are Tabular Data If:
If what you're going to place on the page is information that would make sense to record or track in a spreadsheet, it is almost certainly tabular data.

If you're going to have header fields at the top of columns of data or to the left of rows of data, then it is tabular and a table should be used.

If the contents makes sense in a database, especially a very simple database, and you just want to display the data, and not "make it pretty", then a table is acceptable.


Sep 4th, 2010, 08:01 AM
OK, but I would say not to forget about semantics, which I know is one of the reasons for your post. What I mean is, is it really tabular like, say a calendar? or is it more like a dictionary?

I would suggest it is the latter and so it should be placed in the tags appropriate to that, which means using a 'definition list'.

I should add I am no expert and haven't looked into CSS3 yet.


Sep 4th, 2010, 11:14 AM
I don't want to sound pedantic - really, I don't - but...

"Tables are for not for layout, they are for displaying tabular data..."


Okay, here's just how I see it...

When we place data inside a table cell, it becomes tabular, because it is in a table. Outside of a table or a column, the terms 'tabular' or 'columnular' data have no meaning. It's only AFTER we've tagged the data, that it takes on that form and can be called either 'tabular' or 'columnular'. It hasn't changed the data, all it's done is presented it in a certain way.

When you insert data into a table, you are actually laying it out - as a table. That's all you're doing. In that sense, the table is just another layout tool, as are divs - just in the form of a grid.

Since everything in a webpage is data (actually, the only thing computers deal with is data) this means that text is data, hyperlinks are data and even images are data. It's all just data.

It seems 'acceptable' to most people, that a calendar could contain icons and images, as well as numbers & text; perhaps even links. Websites are made up of text, icons, images and links. The question is, where does that stop...? There is no actual limit to the kind of data you can place in a table - so at what point can anyone decide for sure, when exactly the table itself has become 'unnacceptable'?

So I find it curious that so many of the same people who say "Tables for layout is stupid" also say "...but they're fine for displaying data ".

If tables were that bad for layout (and they are another layout tool) and you can make a perfectly good table with divs (with much more versatility than with the table tag) - then why would you bother using them at all?

I think the proof of the pudding is in the eating. The sheer number of e-commerce sites (both small and mainstream leaders) that have successfully employed tables as a layout tool for their sales catalogues shows that tables work to an acceptable standard. Whether they are 'acceptable' to you or not depends entirely on what you think and what set of standards you follow.

Yes, there are some disadvantages to using tables for displaying and accessing data but these obviously were not enough to prevent successful companies hauling stock and making money for so many years.

Personally, I think that's why tables have not been depreciated - and why they probably never can or will be. There are simply too many successful websites employing them for their overall layout.

The main disadvantage I can see in using the old HTML table, is that it was almost impossible to seperate style from content, which happens to be one of the main prides of CSS P. Now that table elements can be fully styled and integrated into the site using CSS, then I can't think of any reason why it would be unacceptable... unecessary, maybe!

Maybe, if you want to explore CSS3 to it's fullest potential, then it seems to me, you might as well use CSS positioned divs throughout - including things you want to display in a 'tabular' kind of way? I think the power of independant CSS positioning simply highlights the limited functionality of the table as a layout tool. That is all. Not having personally ever used CSS3 to style tables myself, I think the question is more whether it offers any more funtionality, to make using tables worthwhile and whether or not the grid-like structure of the table would limit the possibilities you were hoping to explore.

Dr. V

Sep 4th, 2010, 05:26 PM
Many thanks Doctor Varney and all others.

I think that I'll go for CSS3 table/Divs. To my way of thinking they are Tables and if not, I can see no disadvantage in using them. I am still open to argument, but I cannot see what better use to put them to.