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?
- 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
- —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
CSS does really Suck
- There is absolutely no reason to have CSS. Designer's and Developers should not have to write any kind of code for layout period. Think about it... Do you manually hand code your formatted emails you send everyday in CSS? Do you code your pretty Brochures, Magazine Layouts, Business Cards in CSS before you print them? NO! The final destination medium (print, screen, film) etc shouldn't matter. The fact that you have to spend hours and hours trying to make things line up and then rewrite to code every cross-browser incompatibility and check every time a new version is released, blah blah, CSS is the stupidest f****ing thing ever. HTML needs to be seriously revised into a new language and layout software for the web that keeps up with competitors. I laugh at HTML5 compared to Desktop apps(.NET, PHP, JAVA, AIR) or even Flash. The future too me is 3D and tools that require no to very little coding for Designers.
- —Guest Veteran Developer
css I can't get it
- I am trying to learn this in school at the moment, and I do not get it (most of the time)Yes the browser problem is a pain, and don't forget the validator, even bigger problem in the butt.
Who has time to be spending with these two main problems, no wonder people are you free web design templates.
I am sorry at this point of ever paying into this course
- —Guest denise
a threat to my mental health
- CSS is such a pain in the ass. There are a few good ideas... but many times, you have to spend f***ing HOURS just to get it do what you want. Regarding cross-browser compatibility, I'm sorry but IE is NOT the only browser that doesn't behave correctly. I get very different things under Chrome and Firefox, it's insane.
F*ck CSS, now I hate webdesign because of all this, I sure won't ever do it again.
It's so incredible that designing a software UI with Swing (Java) or Qt (C++), which are tools used by coders, is WAY simpler than designing a website with CSS (which, I guess, should be understandable by... designers, and not only coders).
- —Guest Benoît
CSS is not the problem
- CSS is great! The problem with getting it to work for you is not with CSS, but with the browsers that either do or do not adopt that standard of rendering websites. In fact, most of the headaches of CSS are with Microsoft's now infamous hesitation with adopting standards. That's why you may notice that most of the hacks are done to correct issues related to the various versions of IE. If everyone used Firefox, you would all be singing the praises of CSS, because designing with it would be a breeze. Well most browsers out there are like Firefox, adopting the CSS standards right away. That's the real frustration, not CSS itself.
- —Guest Seth
- An auto-style is created for every little change I make in fonts, orientation, color. My root.css is the size of a novel. It's insane. You realize that when a page is loaded, you're also loading styles from other pages that aren't being used, slowing down site performance? There's no time savings in production either. I spend more wasted energy organizing CSS than any efficiencies I might have garnered with the newer technology. Productivity has declined by 70% - it's really bad. We used to crank out sites like a machine gun. Now our production is like a pea shooter. And it's not because of learning curve.
- —Guest - ai429