HTML & CSS
I have been hearing a lot about HTML5 lately and I'm wondering if it is time to start learning HTML5 and may be CSS3.
Is this something we should be learning now?
Is HTML5 and CSS3 official released?
Thanks a lot
CSS 3 is probably a lot closer to release than HTML 5 is since work on CSS 3 started quite a few years ago while HTML 5 was only recently started.
See http://www.w3.org/Style/CSS/current-work for where things are at with the varions CSS 3 modules - those parts that say candidate recommendstion are the parts of CSS 3 that are actually finished and which browsers are therefore able to consider implementing.
HTML 5 is a long way behind CSS 3 as it is still only at an early draft stage.
HTML 5 is non-normative and parts of it are in a constant state of flux so there isn't much point in learning it yet and then there is the case that older browsers won't support a lot of it either.
Here is an example
Follow the development here at Code.Google.com
You can easily download the source file from the bottom right hand link
I concur, CSS3 has been kicked around the block quite a bit, and I'm even seeing bits and pieces turn up in various books. HTML 5 isn't currently supported by anything so it's way to early to even begin writing anything to it.
Well HTML 5 has only been under development for a year or so while CSS 3 is over five years in. Some parts of CSS 3 have already been released for browsers to start implementing and the rest should reach that point over the next three or four years. HTML 5 will reach the same point about four or so years after that perhaps (depending on how many changes they make - its early days yet so plenty of time to throw it all out and start over a couple more times until they get closer to something that will work better).
HTML5 development started in late 2003.
Timeline nicked from Code.Google.com:
Thank you all for your replies.
You want to learn them so you are prepared for what we MIGHT be able to do someday, then fine...
Just do yourself a huge favor and don't even BOTHER trying to use either of them on production websites. It's called DRAFT for a reason. Implementing specifications before they are even out of draft is a hefty chunk of what makes IE such a stone cold ***** today... When released, IE 5.x and IE 6.x were the most standards compliant browsers of their time - IE 5.x by implementing most of CSS2 draft, and IE6 being little more than an attempt at bugfixing the release version while maintaining backwards compatibility to the thousands of sites that relied on the 'broken/incomplete' behaviors of 5.x - resulting in the whole mess aging like milk.
Should be fun in a few years when all the people trying to use CSS3 on deployment sites today result in browsers like FF aging like milk as well.
And one of the biggest problems with IE5 implementing the CSS 2 draft was that the draft had changes made to it before it was finished and by jumping in too soon IE ended up having to support both that draft "quirks" mode and the actual standard version.
There will probably be lots of similar changes to HTML 5 before it is finished.
As I understand it, the HTML5 team is aiming for Candidate Recommendation in 2012, and Proposed Recommendation in 2022. Bits and pieces of it are becoming available already, and there are JS workarounds for browsers that don't support those features. I've heard people like Zeldman suggest that by 2012 we should be able to use some features of HTML5 pretty confidently (as we use some CSS3 features now)... but we'll see.
Wow, it looks like we are far from using HTM 5, I’m wondering why Steve Jobs even mentions this in his article about Flash on the iPhone if this is not even ready yet.
See argument 5:
Sorry, but steve-o doesn't know enough about the technology he's talking about to even be offering an opinion - well, that and he keeps committing PR suicide so far as the whole codec bull goes.
I prefer to go with what Ian Hickson said on WhatWG.
Frankly, IMHO using HTML5 or CSS3 on production sites before then is going to be NOTHING more than the exact same mess we have with HTML4/CSS2 - where even the 'compliant' browsers have GAPING holes in the *** specifications.
Hell, it's one of the things that pisses me off about certain browser makers (ok, mozilla) - MAYBE they should be fixing the bugs that are OVER A DECADE OLD BEFORE they have people dicking around implementing specifications that aren't even out of draft? Hell, I'm the nutjob who applauded Microsoft for NOT implementing any of HTML5/CSS3 in IE8 since they figured it might be smarter to clean up their HTML4/CSS2 first.
Priorities people. But because bugs like that one aren't fashionable or trendy, we'll likely NEVER see them fixed.
deathshadow60, I have to respectively disagree, especially in the case of CSS3. We aren't back in the days where people expected everything to be pixel perfect and we certainly aren't in a situation where people refuse to think forward. None of the browser makers have any intention (from what I can see) to keep hand holding outdated and primordial code (though they will support specifications which are still valid but kept for archival purposes, like HTML 4.01 will be when 5 goes final). Clearly Microsoft are learning their lessons from what happens if you interlock everything in such a way that people just don't follow the standards anymore. I wholeheartedly encourage people to make use of HTML5 and CSS3 under the condition that they ensure they maintain the source code and make sure it degrades gracefully. If anything, using new technologies off the bat HELPS the standards adoption process as it encourages more people to shape the spec via real world usage (thereby ironing out bugs). It's almost of the same way that microformat adoption has shaped the way semantics have grown.
There is absolutely no reason for anyone to proclaim that those languages are not for production usage purely on the basis that their incomplete. If you ensure your code progressively enhances, maintain your code as new versions of browsers are released (thereby cutting the cord on proprietary extensions as their currently required) and strike the balance between using something to enhance the site and needing something for the site to work, you'll be fine. If we want to stop the issues of old there should be a zero tolerance approach from browser makers for deprecated code, debunked proprietary extensions and "hand holding" for the end user. Doing so as we currently do is what keeps resulting in the mess we find ourselves in, you could certainly break the zero barrier for entry issue if you struck down those who refuse to upgrade their skills and knowledge to match the requirements of progression or as I like to think of it, holding back the whole class because of the special needs kid in the corner. So I am firmly in support of CSS3 (especially) and HTML5 for regular code maintainers in production environments.
Maybe it's just the engineer in me, but I thought that's what the word 'draft' means. Incomplete to the point it should ONLY be used for testing purposes and not for production use. Or for the dictionary version: "a first or preliminary form of any writing, subject to revision, copying, etc."
Subject to revision makes it unsuitable for production use - end of story. That it's not even supported for over 50% of the public (probably more than that real world given FF's artificially inflated numbers, thanks prefetch!) and much of it does NOT degrade gracefully (reliance on multiple backgrounds) or does stuff that the suits will ask "well why the hell can't IE do this? I've seen existing sites do this in IE..."
It's not a good recipe for success.
NOT that anyone seems to be paying the least attention to what draft, alpha or beta mean anymore.
Though that could be my complete distaste for everything HTML 5 except the new form handling speaking, since if you are just talking markup it's a step BACKWARDS in progress from everything STRICT gave us.
No-one is arguing that making your work dependant on HTML5 or CSS3 is a good idea, what I've been putting across however is that especially in the case of CSS3, it's entirely possible to have a website function and work correctly and then layer CSS3 on the top to give it additional levels of visual value and flourishes that improve the design. As far as I'm concerned, if you're not dependant on the language but use the draft to enhance what you already have, there's absolutely no reason not to use it, even in a production environment as if it's not supported, it always has the traditional CSS 2.1 to fall back on (and still work with ease).
That was what caused most of the problems in IE. They took a draft version of the CSS 2 specification and implemented it it IE5. The specification changed significantly between that draft and the final standard resulting it IE needing to support two entirely different modes depending on whether pages assume that early draft version (quirks mode) or the final standard version.
The biggest part of the problem was that IE didn't use the -ie- prefix on the CSS that they should have used for allowing testing of the draft specification but instead used the final names that were eventually given a different meaning in the standard.
But the Internet has no memory - those who forget history...
next page →