Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How is IE7 any better than IE6?

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?

like image 755
Raul Agrait Avatar asked May 03 '10 04:05

Raul Agrait


People also ask

What is IE6 and IE7?

Windows Internet Explorer 7 (IE7) (codenamed Rincon) is a web browser for Windows. It was released by Microsoft on October 18, 2006, as the seventh version of Internet Explorer and the successor to Internet Explorer 6.

Is IE6 still used?

Internet Explorer 6 was the last version to be called Microsoft Internet Explorer. The software was rebranded as Windows Internet Explorer starting in 2006 with the release of Internet Explorer 7. Internet Explorer 6 is no longer supported, and is not available for download from Microsoft.

What is IE6 and IE8?

IE6 (in non-quirks mode): You write CSS for the IE6 limitations (hacks upon hacks) and sleep poorly. IE8 (in IE8/non-quirks mode): You write CSS which is [generally] compatible with other modern browsers and have happier dreams :p~


7 Answers

  • 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.

like image 109
selfawaresoup Avatar answered Sep 20 '22 05:09

selfawaresoup


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

like image 21
Igor Zevaka Avatar answered Sep 22 '22 05:09

Igor Zevaka


I'll add a few points which haven't been listed:

  1. CSS width strictly adhered to: IE7 in standards compliance now mode strictly interprets width styles in CSS. In IE6, if you have a child element that has a width which is greater than the parent element, it would often ignore the width declaration of the parent and expand to fit the child, often requiring hacks of overflow: hidden to make sure the parent didn't expand.

    This is mostly a good thing, but unfortunately introduces a number of other quirks, e.g. <table style="width: 100%"> in a scrolled DIV with CSS overflow set to overflow: auto or scroll will expand the table to the width of the scrolled DIV including the width of the vertical scrollbar so some of the table will be cut off by the scroll bar on the right.

  2. Cleartype with DirectX filters disabled: IE7 disables cleartype (font smoothing on LCD monitors) for elements which have DirectX filters such as alpha transparency and gradients. This is good in some ways, as cleartype made elements with filters, especially bolded ones very blurry/fuzzy, but it's bad because it now renders the text blocky and aliased on LCDs.

    IE7 I think also now supports alpha: 1.0 as well as filter: alpha(opacity=100)

  3. SELECT z-index bug fixed: IE7 fixed a bug where the SELECT elements have infinite z-index and are always above other elements unless you put an IFRAME in between of the SELECT and the element you want to display above it. This is a problem for menus etc.

  4. CSS pseudo-classes improvements: :hover and some other similar CSS states are now supported outside of hyperlinks.

  5. Performance not necessarily improved: IE7 introduced many bugs in it's VML engine, and in IE8 VML is now 10x slower than in IE7 when in standards compliance mode, so it's not altogether good. In addition, I have test cases which show that finding offsetLeft and offsetTop in mouse events in standards compliance mode in IE7 can also be around 10x slower in my web app.

    IE in quirks mode though it's about the same performance for VML and offsetLeft/Top throughout IE6, 7+8. My experience in IE7 standards compliance mode is it's actually much slower than standards compliance mode in IE6, though it is definitely much more compliant.

    I think it's a bit of a double-edged sword though, as raw JavaScript performance did improve, so things like working with array methods and for loops did improve even though I think the rendering engine and many of the associated DOM methods became much slower in standards compliance mode in IE7+.

like image 27
cryo Avatar answered Sep 23 '22 05:09

cryo


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
like image 32
Thomas Avatar answered Sep 22 '22 05:09

Thomas


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.

like image 34
jaywon Avatar answered Sep 22 '22 05:09

jaywon


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.

like image 23
Delan Azabani Avatar answered Sep 19 '22 05:09

Delan Azabani


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.

like image 1
Ben Rowe Avatar answered Sep 23 '22 05:09

Ben Rowe