Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Yeah, I remember those. It was intended as a way to make "tables" using divs.

That way, we could pretend to do page layout with CSS, while still feeling shitty about repurposing something meant for tables.

There's just no justifiable reason for putting whole-page lay-out on the back-burner for so long. So many other far less important things came out before grid, it feels almost like it was deliberately spiteful to delay it so long.



Why would you feel shitty about using ‘display:table’?

It puts things into a freaking grid as you asked for.


For a long time, css was a huge step backwards from what we were accustomed to with desktop application layout mechanisms.

Web-apps were "a thing" starting in the very early naughts, yet just getting stuff to stick where you wanted it on web page required a bunch of stupid hacks and accommodations. Of course people resorted to using tables for page layout. The display:table thing was just a continuation of that.

Whole-page layout should have been an absolute top priority for the folks that controlled css, yet it seems they just didn't care until grid finally came out in 2017-ish? I just don't understand why that is.


It is still not clear to me why you discount display:table as a valid and useful tool for placing content in a grid.

Sure, it is not as sophisticated as Display:grid eg it doesn’t support changing the number of columns depending on the viewport width and it doesnt support elements overlapping multiple grid cells. But many common “full-page” layouts, like header, sidebar, footer can be expressed using “display:table”.


My memory is a bit foggy, but I recall there was an issue with older browsers back in those days not supporting display:table.

So if you wanted to "do right" you could not because IE6 was still "a thing" and did not support display:table. You were forced to use actual tables for layout or do endless tedious workarounds to make things work.

Who to blame? The W3C? Microsoft? I don't know but I glad those kinds of problems are mostly over.


Oh yeah, IE 6 did not support display:table. This was the age of hacks. Microsoft basically managed to block any progress on web standards for half a decade.

I’m not sure why you’d blame this on W3C though. IE stasis froze any standard including ECMAScript. It was Microsofts attempt to halt the progress of the web because they considered it a threat to their desktop dominance. Luckily it didn’t work.


There was a huge cargo cult adamantly against using tables back in the day, even though the "true way" of hacking divs with float and clearfixes and invisible images was totally broken. Somehow having bunch of wrapper and empty divs was "more semantic" or something.

I was in the cult. It was totally inane, but seems to carry some effects to this day.


The movement was against using html table markup (<table>, <tr> etc.) for layout because of the accessibility issues. It was not against the CSS display:table since that does not affect accessibility.


IE didn't support display:table until version 8.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: