1. Computing

Discuss in my forum

Readers Respond: Reasons to Hate CSS

Responses: 72

By , About.com Guide

There are lots and lots of places where you can read about the reasons people love CSS, but what about why you hate it? CSS for layout annoys a lot of people, as do all the different properties, as well as the fact that browsers don't support it. What do you hate about CSS? Share Your Reason

Tables worked, CSS doesn't

Could have finished this project in 1/10 the time with tables than it took with CSS. And, still, some of my table-based sites, 10 years on, are still at the top of Google and Yahoo rankings. Accessibility? Let the minority of web users pressure the W3C to come up with a browser that makes them happy! Until then, I need to get a job done, so I'm sticking with tables!
—Guest Cranes

Hate. It.

In a nutshell, it's for text! The web is no longer a textual medium; it's about graphics! I hate having to find work-arounds & jumping through hoops to get something done that's quite simple using javascript. I tried. I gave up. I moved on. That is all.
—Guest Jack

Yeah, there are a few gripes, but

CSS is overall a great language. The only problem I have is with trying to get divs to float correctly, or to use the "flexible box model". But I find that if I stick to a nice, simple design, it works in every browser. but i you try to use Webkit, IE has its period. But since IE is a shite browser that nobody uses unless they are downloading Google Chrome, I think WebKit is safe to use. CSS For the win.
—Guest anonymouse

CSS- looked great on paper

After spending nearly 8 hours today laying out a web form with a half-dozen fields, I am pretty p*ssed off at CSS. I've always done this sort of thing with tables before, and I thought I might just try to catch up with the times and use 100% CSS instead. CSS suffers from the same problems that HTML does: It makes the assumption that every document is a novel or a user's manual. You know, the kind of document with a "Header", "Footer", "Chapter Headings", "Titles", "Paragraphs", "Sections", etc. It completely ignores the fact that many of us are trying to use CSS to implement *APPLICATIONS*. Applications with GUIs that have widgets placed on a grid. It's like the W3C has never seen anything besides whitepapers and commandline apps. We need a CSS that will allow us to place things on the screen arbitrarily, float them to precise locations, align them into complex table structures, predictably. I'll use CSS for my fonts and colors, but I'm going back to tables for layout, TYVM.
—Guest android

CSS Headache

I LOVE the power and yes, the simplicity of CSS. But I hate trying to get a right hand box to stay on the right hand side. My headache but this just means I need to get better, which I plan on doing until then I will design using a template as a guide.
—Guest Paula

Too complex

CSS is just too complex for general layout. You have to have numerous containers within containers just to do a very basic layout. With tables you drew up little boxes and filled them in with content. - Simple. CSS should be used for presentation style, not layout. General page layout should be part of the html, the raw web page code itself. CSS also requires more code, more files more links, more problems. What takes half an hour with tables, takes endless hours with CSS.
—Guest Dazza

f * c k

f**k the CSS! not worthy to say more.... just not relaible
—Guest mac

Lack of firm best practices standards

Were it not for the lack of a firm set of standards for best coding practices, CSS would be wonderful. The problem arises from the need to use third-party plug-ins and code scraps to anything with a modicum of complexity in a reasonable time frame. Even if you stick to mainstream stuff like jQuery, different coding styles and understandings mean CSS that fights for supremacy and your project is the loser. I spend _more_ _time_ making the CSS play nice than _any_ other component of coding my web apps. It just sucks.
—Guest Mark

It is not beautiful

I very much agree with Bob dog and Guest Ben E. I would add that I always coder my pages in a text editor and with CSS it's just so much more confusing than with HTML and tables. And so I think it's just not a handsome structure with two practice different languages ​​with different syntaxes to be put together to make the layout. I prefer a clear tables.
—Guest mimeini

Accessibility, Part II

(continued) To make matters worse, state and federal governments have adopted complicated accessibility standards which all government websites must meet. By law, you must comply, even if no handicapped person will ever visit your site because of its nature. My beefs with CSS are the same as many of the commenters' here ... endless browser compatibility issues, needless confusing complexity, etc. But my biggest gripe of all is this effective ban on tables. I can't tell you how many times I've spent HOURS (sometimes unsuccessfully) trying to get a CSS layout solution to work, when I could quite literally have had it done it five minutes using a table. Not exaggerating. Professional developers are almost always on a strict budget and anything which wastes our time is frustrating to say the least. We don't have the option of piddling our time away like this. We have clients footing the bill whom we must answer to.
—Guest Bob Dog

Accessibility, Part I

I think the ban on tables started with the push for accessibility. Because somewhere in the world, a blind person using a screen reader might be inconvenienced by interpreting your layout tables as data tables, the entirety of the web development world was expected to waste prodigious amounts of manpower avoiding tables for layout. Wouldn't it have been easier to simply allow tables for layout, and agree on a way to signal to screen readers which tables are for layout and which are for data, so that they can ignore the layout tables? Seriously. I've been making websites for a long time, and accessibility (screen reader) technology has always lagged way behind the development of HTML, CSS, and other technologies. Accessibility has been a boat anchor, limiting what technologies you can use, and inflating the time that you have to spend implementing your (inferior) design. (continued)
—Guest Bob Dog

It isn't CSS' fault

I've watched markup standards for a long time. CSS does a pretty good job in many respects, relating to attaching style properties to markup trees. What it gets wrong is that it was derived from, and to some extent still relies upon, the HTML layout process. The HTML model was a haphazard experiment from the start, not a well-thought-out and cleanly engineered system. The speed of development led to a huge architectural train wreck -- this was the sacrifice we as technology consumers accepted when we rejected democratically empowered standards bodies. Remember, CSS is not a standard. It is a recommendation made by a group of vendors.
—Guest Forest Gump

Insidious browser changes wastes my time

CSS has tripled the coding required to get a page up and reasonably working. We used to use "center" and "blue" and "b" for bold. Now "span class=waste" "p class=blah id=hackable" "end p" "end span". Nothing sickens me more than not being able to use the KISS method. Keystrokes DO count, as does how many servers are used to present a page..... I am sick of websites that waste my time waiting for their "cloud" images and the ridiculous "analyzer stats" and javascript from who knows where.
—Guest Lee Ann

CSS is like OOD - impossible

CSS has parallels with Object Oriented Design - you create elements that interact and have behaviours of their own. Like OOD, this is all fine when everything is SIMPLE. But beyond a certain point it is just ridiculous and counter-productive. And that's not mentioning stupid browser compatibility that makes CSS (and us with it) a loser. I develop web applications (not web pages) and creating GUIs in CSS is laborious given the useless alignment capabilities in CSS. Creating floating divs and coding them so they behave nicely and auto-arrange themselves into the design you want is, well, retrograde to your purpose of implementing a desired design/layout. This is where tables still have a place in the design repertoire. You can use a top-down layout approach instead of trying to herd the little boxes together.
—Guest RockwoodON

I love tables.

Tables make sense. CSS for layout does not. I like CSS for attributes and what not, but people just need to use a server-side script for their oh so precious "separation of content and layout". Please don't forget that a header and footer can mean so much more than just Top and Bottom.
—Guest Javitzso

Share Your Reason

Reasons to Hate CSS

Receive a one-time notification when your response is published.

©2013 About.com. All rights reserved.