CSS Support Could Be IE7's Weakest Link
Ritalin16 writes "Many web developers may be disappointed to hear that Microsoft decided to hold off on full CSS2 support with IE 7.0. As said by Microsoft-Watch: 'One partner said that Microsoft considers CSS2 to be a flawed standard and that the company is waiting for a later point release, such as CSS2.1 or CSS3, before throwing its complete support behind it.'" More commentary available from ZDNet. Generally related to the IE 7 Acid Test thrown down by Opera.
Support CSS 2.1. We're really not picky. Anything is better than nothing.
"One partner said that Microsoft considers CSS2 to be a "flawed" standard and that the company is waiting for a later point release, such as CSS2.1 or CSS3, before throwing its complete support behind it." If MS were so concerned about quality standards, they would embrace the best thing we have: CSS 2. And then, when 2.1 or 3 came along, they'd support that promptly.
I Want To Believe
See, that's the problem. It's just like Microsoft to say "We'll wait til later ( point release, such as CSS2.1 or CSS3) before throwing our complete support behind it" I don't understand! You have to plan for the future, no plan after the fact!
"I cannot think of any need in childhood as strong as the need for a father's protection." -- Sigmund Freud
Certainly not slashdot, it seems. In fact, they don't seem to be adhering to any standards at all.
Funny how that open source superiority give slashcode cruddy HTML code and horrible, outdated design.
Even when you design a standards compliant webpage you still need to use hacks to get things to work and validate correctly. And because of IE who refuses to fully support CSS it just makes life more miserable for web developers wasting time on figuring out how to hack together their code to display correctly on all web browsers. I hope companies start designing webpages for Firefox only and it will display a message when you try to access the site in IE saying please use firefox to access this website.
Microsoft has once again decided that it's going to go its own way, and I'm sure this means more crippled MS pages that other browsers can't read. I'm going to start making it very clear to my customers now that MS has no intention of playing nice on the web, and recommending Opera or Firefox.
The world's burning. Moped Jesus spotted on I50. Details at 11.
Agreed, CSS needs some work, but its a hell of a lot better than nothing at all (or flawed support, anyways.) What gives?
-dave
http://millionnumbers.com/ - own the number of your dreams
Yesterday I had to make a page.
I made it in firefox with no problems. Then, I looked at it in IE and it was terrible. If I code to standards why can't microsoft make their products support standards?
People will use IE7 because windows update will automatically put it in place of IE6 one day. It will fix some bugs and create others. It will not change how web developers create sites, it will not derail Firefox, it will not make people salivate for Longhorn.
Once upon a time, this would have worked. Take the emerging layout standard that doesn't use your bizarro extensions and strange layout tactics, decide not to support it, and force everyone who wants slick new layout features to write for either you or everyone else, or else write every page twice.
But I'm not so sure this is a good idea now. The fact is that more and more people are getting to the point that they would rather write for everyone but IE rather than just IE. I think falling behind on standards while steaming ahead with the next generation of crappy proprietary extensions just isn't going to work again. In fact, I think this might accellerate the death of IE.
Bottom line: bad move. The correct response to more competition is to compete, not to stick your fingers in your ears and scream "LA LA LA I'M NOT LISTENING!"
adam b.
well, is it a broken standard or is the standard 'flawed' in that way that they don't know how to easily support it in their codebase?
Well, it's really only "flawed" because MS doesn't control it...
-- If god wanted me to have a sig, he'd have given me a sense of humor.
"I'm Microsoft, and I'm a big monopoly, so I'm arbitrarily deciding not to support standards I don't like. For no other reason than I don't like them. Secretly, it's just because I don't want to adopt standards that compete with my own, but my managers have told me to tell everyone I just think it's a buggy implementation. I never make any of those..."
Someone should start an organization that publicly hands out awards to companies that severely hinder the progress of technology. Microsoft would win every year. The web has been held back for seven years now because IE won't properly support CSS2. That's like someone developing an improved version of gasoline that costs and pollutes less, and then none of the gas stations adopting it for close to a decade even though it's cheap and available. You look back and shake your head that all this time, people could have been saving money and polluting the air less and they have no idea.
The general public doesn't even realize the web would look and interact much better than it does now. We should have been visiting more advanced websites years ago. But the web still looks and functions the way it did in 2000, because the majority browser IE doesn't adopt technological progress. It's times like these I wish I was rich enough to run public service commercials that stated all this, just to inform people how they're being hindered without even knowing it.
Can we get the parent modded up? It's ridiculous for any employee of Slashdot to be criticizing anyone for their lack of support for web standards.
Forget the whales - save the babies.
I'm surprised it hasn't been said:
Wouldn't supporting CSS 2.1 or CSS 3 imply support for CSS 2? These standards are backwards-compatible, right?
Wouldn't a company who owns over 90% of the market essentially dictate what is an what isn't a standard?
If Microsoft doesn't back CSS2 then CSS2 has no chance of becoming a standard.
well, if they supported it properly web designers would have easier job of making the pages look the same on all browsers.
world was created 5 seconds before this post as it is.
I've decided that from here on out I will invoice my CSS time for IE seperately. Being that I create most browser interfaces in XHTML and all layout is 100% CSS, I will now isolate the huge chunk of time I must spend on each project for IE compatability. I will also make it clear UPFRONT by making an accountance in my proposol for just how my design time will be devided up and how much time I estimate to spend on IE compatability vs supporting the rest of the world.
Why single IE out on my invoices and proposols? To let companies know where that extra $2,000.00 went for 20-30 hours of my time. That's why. And in hopes that they will opt not to engage in that expenditure.
I'd urge all other UI designers and developers to do the same.
And if the client decides that they wish not to support IE, a small victory shall have been won.
It was fine 5-6 years ago to say "Ooops -- you're using that Netscape piece of shit, please come back using a real browser"
I say it's time we start doing this again, but for IE and for the exact same reasons.
Picture a web page that is full screen at any resolution. With a layout that is dynamic and easy to change based on user input without refreshing the page. Text that dynamically increases size for the user. A single web page that looks correct printed, on a web browser, a text mode browser, or even to a blind person. With multiple layouts that a user can choose (low bandiwth, high bandwith, no images, etc)
All that can be done with css, and its very easy to do. And all without any tables.
check out www.csszengarden.com or do some googles.
It's "flawed" because (A) it isn't in their patent portfolio, (B) they didn't invent it, (C) they don't make money off of it, and (D) it doesn't improve their marketshare or "mindshare". In other words, it's "flawed" because it isn't a Microsoft product.
With spending like this, exactly what are "conservatives" conserving?
Okay, let's now start tossing out possible reasons Microsoft wouldn't want to support CSS properly.
I'm guessing it, in some way, has to do with Market edge. More specifically, since a great deal of web sites design their pages to work with [flawed] MSIE rendering, all other browsers might be perceived as broken or inferior by the end user. "It worked fine under MSIE... let's just go back to it."
Essentially, I believe this demonstrates harm to the internet community at large and an effective hijacking of internet standards. Perhaps it would be considered a frivolous lawsuit in the end, but perhaps the W3C should file some sort of suit against Microsoft over the matter. It's the only thing that they and the public at large seems to understand really. "Why is Microsoft being sued again? Breaking the internet? Crap!"
columns are easy, dynamic columns are a right bastard. CSS needs groups and referncing.
myclass{
width = grouped
}
myclass2{
left = myclass.right
height = id.height
}
etc...
thank God the internet isn't a human right.
Yeah, but would most people rather have a working Google or a working IE?
I submit that the unwashed masses would now prefer the former to the latter.
p
In Korea, long hair is for old people!
I'd agree to that. In fact, I find a lot of the positioning control a little hard to deal with, but I wonder if some of that might be the browser implementations rather than the standard itself. You know, sometimes I try to place something, and I'm pretty sure I've done it the right way, but it takes a hell of a lot of tweaking to get it to show up where I want it. That might be browser issues, but it might also be that I'm somehow confused by the standard and missing some detail of what I'm doing.
Just as an arbitrary illustration, I get sick of writing:
Personally, I think I'd end up getting *more* confused by your layout. Too many brackets, too much nesting. Maybe you're right that there's a better way, but I'm not sure what.
But I think you're right to refer to these issues as 'things you dislike' rather than flaws. I don't believe I'm arguing with you if I say that these are areas where CSS has room for improvement, but they aren't "flaws".
Yeah, phasing out obselete products after more than half a decade is pretty shitty.
Kind Regards
"A few great minds are enough to endow humanity with monstrous power, but a few great hearts are not enough to make us w
I think that the latest incarnation of CSS may be the "standard", but since IE is by far and away the most popular browser its method of rendering pages is actually the de facto standard.
I don't know how many times I've read this statement from other people - "I like Firefox/Mozilla, but it doesn't render my bank/news/etc site correctly so I have to use IE." Or "I would use another browser but I support IE at work." A lot of people are stuck with IE because of its poor interoperability.
Now why would MS decide to spend money on extra development effort on a project that earns no revenue in order to increase interoperability, thereby incouraging web developers to fix their web sites so that competing browsers can render them correctly? This loses them both dollars and marketshare.
Just make sure that the target platform wasn't IE all along before you go and do that. Charging extra for compatibility with the primary target platform would be a bad move. ;p This would be like me writing an application for MacOS X then charging the client to port it to Win32 when the target platform was Win32 all along.
If a page doesn't adhere to standards, but renders well in popular browsers, what's the problem?
The problem, IMO, is that you don't know why or why not things render well.
By conforming to standards, you have a (debatably) clear set of rules that define certain behaviours. For example, you will know that if you want to have some number of pixels pad your elements, then you will not have to resort to ugly hacks to get the same layout in BrowserX as you do in BroswerY. Why? Because each browser will reference the rules for adding the specified amount of padding to an element, in the right place, and in the right proportions.
By not supporting standards, you have a number of problems:
Imagine whipping up a simple page to test out a new design idea in your browser of choice. Everything looks good. Now you try to use it on your production page. Something looks wrong. Is it because you've included it in a tag that overrides your specifications? Is it because you've arranged it next to an element whose properties are spilling over into your space? Is it because you tested it inside of a tag, for which the specification holds, but have erroneously tried to apply it to a tag that does not support it? How will you know, unless your browser developers tell you -- assuming they know themselves?
For me, that's why CSS is useful. For the most part, it's pretty clear as to what things support what attributes.
Since your post was originally about Slashdot's (non-)adherence to CSS and other web standards, here's one major incentive to switch over: bandwidth. Does anyone really like throwing money away?
What they only support their own flawed standards?
The man who trades freedom for security does not deserve nor will he ever receive either. - Benjamin Franklin
Not to troll, but your crazy. If they limit Javascript they will kill millions of websites, just to get at Google. Make no mistake Google is still small time compared to MS, large corporate clients would be very upset when their webpages cease to function properly on IE. MS wouldn't do something to hurt themselves with businesses
Pshh, have some imagination! Just use ActiveX to install it like the rest of the software Joe Desktop doesn't know he installed.
You have to put in INCREDIBLE amount of effort to do make even the simplest things work. Ever tried centering a block object on the page _without_ using tables? I use CSS2 in my work, and it's suitable for simple things like borders, colors, fonts, etc. Unfortunately, for a lot of design tasks it's more pain than it's worth, even if you code for just Firefox.
I guess this explains why you think it's a good idea to snub customers.
In what way is he snubbing them?
As important as web standards are, cross-browser site compatibility is NOT the customer's problem to solve.
It becomes their problem when they have to pay extra to have a website that works in Internet Explorer. They have to pay extra because it's more work. It's more work because Internet Explorer is extremely deficient in a number of areas.
To give an analogy, let's say you were paying a moving company $2000 to move your stuff from Chicago to LA. Then they say that it will take a month instead of 2 weeks unless you pay $1500 extra because one of the stretches of highway is rough and doesn't have nice rest/gas stations. Are you going to start lobbying and writing to state officials for highway improvements or simply find another moving company?
If the analogy were accurate, the other moving companies would simply charge the extra without telling you why.
Other web developers don't magically take less time to work around Internet Explorer's problems just because they don't list it as a separate line item on the invoice.
I'd be happy to compete with the original poster for his business by using internally available and re-usable tools/techniques to solve the compatibility problems.
You can't solve the compatibility problems, only Microsoft can do that. Things like Dean Edwards' work goes a long way, but is dependent upon Javascript, which is unacceptable for many purposes.
I guess we should just step up evangelizing other browsers. We should compare IE to paint, and other browsers (like firefox, opera, etc) to programs like photoshop and psp. If IE had under 50% market share, I'd bet 10 to 1 they'd be supporting CSS, and IE7 would have been out by now.
Why would anybody want to use display: inline-block. The article I link to says "The real use of this value is when you want to give an inline element a width. In some circumstances some browsers don't allow a width on a real inline element, but if you switch to display: inline-block you are allowed to set a width." How many times are people going to run into a situation to need this?
*snip*
For a long time I've been trying to get a list that will appear like a table. You can make a list set them to display as inline. It works, but then you can not set a width, which then makes it useless.
I find it funny that the example you used to document CSS's failings is solved by a modification that you profess nobody needs.
concrete5: a cms made for marketing, but strong enough for geeks.
Having spent the last couple MONTHS trying to get a Web site to:
1) Load external content using iframes or object tags in four different browsers;
2) use CSS to emulate frames in four different browsers (all current - forget about the older ones entirely);
it is clear to me that the Web industry is screwed up beyond all recognition.
Big surprise - it's a part of the IT industry...
First, the Web was never intended to be either an application platform or a desktop publishing platform - which seems to be what a lot of Web site designers and standards committees want to achieve.
Sorry, the technology simply isn't there in HTML, CSS and JavaScript to do this.
Second, the industry has as usual spent all of its time producing dozens of browsers - NONE of which support the standards in their ENTIRETY and ALL of which are incompatible with every other browser in existence in at least some respects.
Microsoft of course, as usual, is the worst offender. Web designers talk about the "IE factor" - the incompatibility and bugginess of IE with respect to virtually every standard which adds twenty percent or more to the development time for a Web site.
The industry has a LONG way to go to get the same functionality as client-server approaches to app implementation.
And as long as Microsoft is in the game, it ain't ever gonna happen.
My advice:
1) Stop trying to make your Web site FANCY (which is not the same as making it LOOK GOOD) and start trying to make it USEFUL to people.
2) If you want a "Web app", use other technology than HTML, CSS, and JavaScript.
Richard Steven Hack - This sig is TOO GODDAMN SHORT TO DO ANYTHING USEFUL WITH! MORONS!
Yuk! How about because it's unnecessary, unreliable, harder to maintain and extremely kludgy to boot?
Browser sniffing is the worst way of making web pages, the way that was favoured around the time of the dot-bomb. Instead of testing for actual abilities and using what is available, it relies on assumptions, which are often wrong. Why restrict something and say "sorry, your browser can't do that" when instead you can just do a general, easy test for it and use it if it's there?
The correct way to cope with the capabilities of different browsers is by using feature detection to weed out the ones that don't support things fully, and giving the more advanced stuff to the ones that do - entirely on the client side.
Browser sniffing based on user agent strings really needs to die the death it should have died many years ago. I suggest you buy a copy of Designing With Web Standards and get reading about the right way to do things.
Organic free-range music... yum!
This is exactly what we've seen time and time again.
1. a standard exists
2. good products support the standard
3. Microsoft creates their own proprietary "standard" and uses it instead
4. because IE has the largest marketshare, websites are designed to render properly on IE
5. customers try a standards-compliant product, only to find that their sites don't render 'properly'
This is deliberate anticompetetive behavior, plain and simple.