CSS 2.1 Becomes W3C Recommendation
yuhong writes "After about a decade of development, CSS 2.1 has become a W3C recommendation. From the announcement: 'The current interoperability makes it easier than ever for developers and designers to enrich the toolkit. W3C expects future additions to CSS to be organized as independent modules, allowing smaller, more focused feature sets to progress and stabilize at their own pace. Some of these new features are already supported in browsers and other software in draft form (using the built-in CSS prefix mechanism designed for experimentation). As interoperability improves for each one, developers can transition to the standard to simplify their code. The CSS Working Group also publishes snapshots of which CSS features are supported interoperably in browsers; see, for instance, the most recent CSS Snapshot.'"
And while they are so slow finalizing the CSS standard, I use SASS and CSS 3.0. SASS is not about adding new features, just some basic common sense in the grammar, allowing for nesting, variable substitution, and another couple of sugary things.
Next step they'll finalize a standard on BASIC from the 80s. :-p
42.
This is a quote from wikipedia, which might explain why CSS 2.1. is only *now* part of the recommendation:
The CSS Working Group began tackling issues that had not been addressed with CSS level 1, resulting in the creation of CSS level 2 on November 4, 1997. It was published as a W3C Recommendation on May 12, 1998. CSS level 3, which was started in 1998, is still under development as of 2009. In 2005 the CSS Working Groups decided to enforce the requirements for standards more strictly. This meant that already published standards like CSS 2.1, CSS 3 Selectors and CSS 3 Text were pulled back from Candidate Recommendation to Working Draft level.
Even so, what has the W3C been doing the last 6 years!?
Kewl,
But it's not like it wasn't a defacto standard anyway, for quite some time.
Let's see what mACROsFOT tries to embrace and extend on this one eh?
So foul a sky clears not without a storm - Shakespeare -
Back in the old days (aka 1990s) Web development was fun, it was something anyone could learn in next to no time.
HTML 3.2 was fairly straightforward.
Tables were the layout order of the day and whilst being frustrating as hell at time for interoperability, was fairly easy to get work around, learn and use.
The problem with today's web it's overly complex, excluding the "anyone can do it". HTMl 4/XHTML whilst not much more complex than 3.2 is harder to learn, CSS, and inheritance whilst a great idea to remove style from content, adds another level of complexity. CSS2, CSS3 all just add to the complexity.
and I won't even go down the cgi/php/asp/jsp n-tier approach as that's just beyond most "regular" people and consigned to us geeks.
What we don't want to do is make web development so "elegant" that we preclude the "anyone can make a website". If we do that we'll all lose some of the freedom the web has given us.
There is a difference between which standards has 'Recommendation' level, and which ones are recommended to use. CSS 2.1 has been recommended for a long time, it is just not a 'Recommendation'. Just like RFC standards doesn't actually want your comments.
For which CSS specifications that are recommended. Check out CSS Snapshot 2007 , and don't worry about the 2007 name, the latest version is from May 2011.
I've seen some people (foaming-at-the-mouth microsoft nutcases) claiming that nothing needs to be done right in the browser *until* the W3C finalises it. Watch MS try to spin this as a publicity stunt, despite their working group plants usually being the ones holding the process up.
CoffeeScript isn't "good" in any way. It's merely a bandage over the horrible wound that is JavaScript.
Every aspect of JavaScript is a failure. Every single one. They managed to fuck up the syntax. They managed to fuck up the semantics. They managed to fuck up prototype-based OO. They managed to fuck up the equality and inequality operators. The fact that you need to hide it as much as possible, whether using something like jQuery or CoffeeScript, further goes to show how anally fucked it is.
JavaScript has no redeeming value. There's nothing good about it. Frankly, it should have been destroyed years ago. But browser developers haven't exactly shown themselves to be the brightest people around. I mean, just look at Firefox. Who the fuck thinks it's a "good idea" to write huge portions of a desktop app using JavaScript and XML? It's no wonder it is so fucking bloated, slow, and prone to memory leaks, and it's supposedly a "lightweight" browser.
It's time for a real programming language in the browser. It doesn't matter if it's Lua, or Scheme, or Python, or Ruby, or Erlang, or even Haskell. We just need to get rid of JavaScript. We need to get rid of what is actually the biggest mistake ever made in the field of computing.
Replace "finalize" with "recommends" and you're a little closer to correct. The problem being that a lot of other browsers are implementing very early and quite immature drafts which are in flux, and doing so without consulting W3C or even each other on implementation details which invariably leads to different behaviors.
What everyone should be doing, apart from implementing experimental support in their browsers, is submitting test cases to the test case suites at W3C so that these details can be hammered out in an agreed upon fashion while simultaneously providing other implementers with working examples.
Ok, I know I'm gonna be modded as "Troll", but I need to say it: CSS is an horrible, backward, overly-complex standard. And yet, for philosophical / ideological reasons, it has been branded by the semantic folks as one of the most exciting innovation of the 20st century.
CSS has been invented in the days when most web pages consisted of simple blocks of text, with an occasional image floating left or right of it. All that was needed back then was changing the color of text, adding margins / paddings and that's about it. It was NOT designed to handle complex layouts: for that, you used tables.
And then the semantic folks arrived and told everyone using tables was baaaadddd for their main purpose was to present tabular data, not to layout things. And they were right, of course. But they made the wrong choice, deciding to extend CSS rather than crafting a new standard, specifically designed for the task. And here is the result: more than fifteen (15) years later, we still can't do simple things like "aligning this block to the bottom of this one" without using dirty - not semantic at all - hacks, or even falling back to JavaScript.
Even CSS 2 isn't supported properly by some browsers. Let alone CSS 3. And while you may think it isn't W3C's fault, I think perhaps, if some of the richest companies in the world haven't been able to implement this standard properly in, say, 10 years of continued effort, and that standard doesn't even reproduce all of the basic features that have been used in print for decades, it *might* be overly complex to get right. Look at these stupid cascading rules, for example: who seriously wants that ?
We need to move forward and develop new standards, focusing on /features/ rather than on pseudo-philosophical crap. We want to design websites that look great. Period.
Yep. Microsoft has a very cranky enterprise oriented customer base. They do not want to upgrade IE only to find out a bug screwed up an intranet app because the w3c changed a detail about a css property that the new IE follows. It seems there approach is to simply ignore the standards unless recommended as to prevent adoption. This causes everyone to wait as IE is the most popular browser in the world
http://saveie6.com/
Adding any form of macros or additional scopes and indirections, including symbolic constants, is not just redundant, but changes CSS in ways that make it unsuitable for its intended audience. Given that there is currently no alternative to CSS, these things must not be added.
- Bert Bos, W3C/ERCIM
That's not only idiotic, it's also kind of douchey. Macros and variables make it unsuitable for web designers? PLEASE. Learning to use Dreamweaver efficiently is harder than learning Sass to do styles with all the nice features CSS lacks by design.
Just remember that CSS is HORRIBLE BY DESIGN, and you'll be OK.
To understand recursion, you must first understand recursion.
We need to get rid of what is actually the biggest mistake ever made in the field of computing.
Hey, mysql has nothing to do with client side development.
Duke Nukem Forever hits stores on June 14, 2011. 2K Games, now the patron saint of lost causes, has agreed to spearhead the shepherding of CSS 3 through the W3C standards process. They have committed to the publishing of CSS 3 as a formal standard by the time Duke Nukem Infinity hits store shelves in 2020.
Every aspect of your post is flamebait...
They managed to fuck up the syntax. They managed to fuck up the semantics.
In a few important ways, sure -- things which are fixable, and things which pale in comparison to other mainstream languages. I'd much prefer JavaScript to C++.
They managed to fuck up prototype-based OO.
In what way? It seems to work well in modern browsers.
They managed to fuck up the equality and inequality operators.
No worse than Perl, and from what I can tell, CoffeeScript deals with that problem.
The fact that you need to hide it as much as possible, whether using something like jQuery or CoffeeScript...
Sorry, what?
jQuery isn't even in the same category. It doesn't change the syntax. It doesn't "hide" anything. It provides a useful library abstracting over the DOM, which is not part of the core JavaScript language, and which has similar problems and solutions in other languages -- the obvious example is Hpricot in Ruby (though the cool kids seem to be using Nokogiri these days), and Ruby has none of the issues you just mentioned with JavaScript.
CoffeeScript deals with the syntax, and makes it easy to generate the good parts of JavaScript -- by, for example, replacing '==' with '===', which does what you'd expect '==' to do. I really can't see anything wrong with this. It's exactly like having a preprocessor for C which makes it hard for you to accidentally do unsafe pointer arithmetic.
JavaScript has no redeeming value. There's nothing good about it.
Bullshit. Here's a list of advantages it has over Java, as a language:
I could go on. Some of that is opinion, I suppose, but a lot of them are big gaping holes in Java, and really nice features that I wish other languages had. And if JavaScript is still the "biggest mistake ever made in the field of computing," what does that make Java?
I mean, just look at Firefox. Who the fuck thinks it's a "good idea" to write huge portions of a desktop app using JavaScript and XML?
A desktop app that spends its entire day showing you web apps, so that's not going to be as much of a performance difference as you suggest. It also makes it a lot easier for web developers to hack on their own browser, which is very useful. Chrome is written mostly in C++, but extensions are still JavaScript+HTML, so you can go from web developer to extension developer in an afternoon.
Oh, and writing in a higher-level language -- I don't know that I like the XML idea, but JavaScript makes sense here. It's that much less of the browser that can possibly have a buffer overflow.
it's supposedly a "lightweight" browser.
I agree with you here. It started out as the "lightweight" alternative. But hey, the fact that it actually pulled that off for a year or two suggests that it's not the JavaScript or the XML that made it bloated. No, it's the feature bloat.
Don't thank God, thank a doctor!
For years we have been working on DeCSS, and now they give us a new and improved CSS! Oh wait. One is a Content Scrambling System, and another is a Cascading Style Sheet. Dammit! Where are the acronym police when you need them!
is that you HIBOU? fucking troll.
Forget the CSS Snapshot 2007 link, the article summary has a link to CSS Snapshot 2010. Same thing with the year though, also last updated May 2011.
Every aspect of your post is flamebait...
Yet you responded and fed the troll anyway... good job.
Not all web hosts offer Ruby, and not all web sites are in a position to switch from one host to another based solely on Ruby support. I guess one could just compile .scss to .css before uploading the web site.
sticky footer
I'm not familiar with this term "sticky footer", and the page you linked doesn't appear to give a precise definition
How do I place a box to the bottom of another variable height box ?
Outer box is position: relative. Inner box is position: absolute; bottom: 0.
How do I vertically center a fixed-height box within another fixed-height box ?
Google css vertical center gives this page.
no-hack
I'd like to know what you mean by a "hack". Otherwise, I run the risk of every solution I suggest being called a "hack".
...about [web] standards is that there are so many crappy ones to choose from.
That said, I thank all deities ever dreamed up that CSS is not an an XML dialect, the semantics are a mess, but at least its got a minimally sane syntax, which is quite a rarity this days (JSON is another rare exception).
"When in doubt, use brute force." Ken Thompson