views:

599

answers:

9

Oftentimes in the web development community, you hear people complaining about developing for IE6. However, if you are developing using a robust JavaScript framework like jQuery, is developing for IE6 any different than developing for IE7?

+1  A: 

Hardly; in terms of IE7's gain in standards compliance, it's negligible. All of the versions of Internet Explorer up until today, including IE8, have horrible breaks in JavaScript, CSS and DOM implementation. Most of the hacks you use for IE6 still apply for later versions. However, on the bright side, IE9 is shaping up to be quite good, and big progress has been made (I've never thought I'd actually say that).

The gaps and differences in implementation between the spec, and other browsers like Firefox and Chrome are much smaller.

I'd recommend Mark Wilton-Jones's article on IE's numerous flaws for more info.

Delan Azabani
I really hope IE9 gets better, but the IE9 Platform Preview really disappointed me, numerous old bugs and JScript deviations from the ECMA-262 standard still there, and it has almost nothing of the new ECMAScript 5th Ed. Standard...
CMS
In comparison to previous levels of improvement by IE, it's major. In comparison to what the other browsers improve every day, it's nothing.
Delan Azabani
Another bad link, that article is talking about IE7 beta versions as the most recent release. I agree with where you're going but if you're going to include references, try something more credible and up to date.
jaywon
Most Web designers I've met would seem to disagree with you. IE 7 still sucked but was a massive improvement on 6, which was designed to compete with Netscape Communicator. You seem to have an ideological beef with IE that leads you to ignore improvement if there are still flaws and trust any source that has something negative to say about it.
Chuck
Chuck, I believe your views about my answer are wrong. "IE9 is shaping up to be quite good" proves that I am open to IE's improvement (if they actually do improve, which they finally are).
Delan Azabani
I'm sure you're open to its improvement, but the fact that you see **no** appreciable improvement where most others do see some shows that in practice you tend to ignore it. PNG went from unusable to usable between 6 and 7 — that alone is pretty significant, but you completely gloss over it just because IE still has "horrible breaks". You're not wrong in your criticism, but if most people see improvement and you don't, doesn't it seem more likely that you're missing something than that they're imagining things?
Chuck
I'll put it this way. I acknowledge that IE has taken some big steps over the years (e.g. PNG alpha, etc.) but let's ignore the fact that my answer /technically/ doesn't fit with the question. Let's look at it /practically/. In the big picture, IE hasn't made much in terms of improvements. Are any of the following (now old technologies) supported? canvas? XHTML? JavaScript 1.6? Standardised DOM and events?
Delan Azabani
+1  A: 

Javascript & CSS frameworks minimise the amount of damaged caused by IE6, but there is still a number of bugs & inconsistencies between IE6 and other browsers.

IE7 is better than IE6, but only just.

Ben Rowe
+13  A: 

IE7 supports png transparency, which is a massive help in maintaining graphic resources for the site.

Igor Zevaka
+15  A: 
  • It can display alpha-channel PNGs correctly.
  • The calculations for box dimensions are not that far away from the standards.
  • Rendering and Javascript performance actually allow you to do something fancy without freezing the users machine every now and then.
  • Some security issues have been addressed.

In relation to the other browsers, it shows no improvement at all because the others have made much bigger progress in the same time. It's still the worst of the major browsers and a pain in the b*tt for developers.

Techpriester
@Delan - whats inaccurate is summarizing the wiki page you posted in one sentence. The majority of the IE vulnerabilities on that list was for IE6 at 463, and that was from a report in 2000, and says nothing of what vulnerabilities still exist today.
jaywon
@Delan - I dod not say that ALL issues have been fixed. But SOME issues actually got fixed. There's no doubt that IE7 and 8 are still a horrible mess.
Techpriester
@Delan - Also, the question was "What is better than in IE6?" and not "What is still broken?"
Techpriester
@Delan You'll note that this is a comparison between IE 6 and 7, not IE and other manufacturers. From IE6 to IE 7, performance increased notably.
Justin Johnson
+1  A: 

Personally, the most annoying thing about IE6 is its lack of PNG transparency. This results in requiring use of AlphaImageLoader for images. The implications of this is introduces its own bugs/inabilities. For instance transparent backgrounds using AlphaImageLoader can't repeat.

Also, there are bugs such as the double margin bug, lack of support for min-height and min-width, adding extra line breaks to floated elements, missing css selectors.

lojack
+2  A: 

I think most of the improvements to IE7 was performance(javascript) based and trying to get closer to standards compliance for CSS.

Off the top of my head, these were some of the major improvements as I recall:

  • Fixed the double margins bug
  • Fixed numerous issues with the box model and positioning inheritance
  • Inclusion of Developer Toolbar into browser(not a bug fix, but big one for me)
  • As noted by others, proper PNG handling

It was a much better browser when comparing it to IE6, when you compare it to other browsers out today, not so much.

jaywon
+5  A: 

IMO, there is a world of difference between IE6 and IE7.

  • IE7 supports built-in XMLHTTP whereas in IE6 it requires an ActiveX control.
  • IE7 supports a couple of additional pseudo classes
  • IE7 fixed some of the problems with z-order and zoom.
  • IE7 fixed "a few" of the box model issues.
  • IE7 added support for > child selector
  • IE7 added support for adjacent (+) selectors
  • PNG transparency support
Thomas
The IE7 implementation of the `XMLHttpRequest` object is [really bad](http://ajaxian.com/archives/ie7-xmlhttprequest-native-or-not), some libraries like jQuery for example, [prefer to use](http://github.com/jquery/jquery/blob/efe51cdf2049906788173390a9e9867f5a5ab47e/src/ajax.js#L178) the ActiveXObject if available, simply to avoid it...
CMS
@CMS - Try building an AJAX enabled site for a corp that standardized on IE6 with no ActiveX controls allowed. For myself, it was a heaven sent to have it built-in as it meant I could actually use AJAX.
Thomas
+9  A: 
David Morrissey
+1  A: 

Here's a good explanation with some examples: http://www.smashingmagazine.com/2009/10/14/css-differences-in-internet-explorer-6-7-and-8/

John Russell