2

{idea came from I've decided not to cater for IE6 - What tasty CSS treats can I use? but I wanted an IE7 version}

Ok firstly, this is not a discussion on whether I should be catering for IE7. I'm sure there's hundreds of threads on S.O. where you can discuss the pros, cons, market shares, javascript shivs and all the other stuff that comes with it.

Let's say I've put two fingers up to IE7 and am ignoring its existence -

what can I now do differently in the way I make my pages?

Pseudo-selectors?

Parent/Child selectors?

Hardware-accelerated potato counting?

Other tidy stuff?

What are the new freedoms that come with abandoning IE7?

I know some of you will be itching to tell me why I should support ie7 or about js fixes that mean I can use certain things etc etc - Please don't waste your/my/our time!

Community
  • 1
  • 1
JavaAndCSharp
  • 1,507
  • 3
  • 23
  • 47
  • Are you basically asking what the new features in IE8 are? – wecsam Apr 20 '12 at 19:17
  • 3
    If you abandon IE6,7,8 & FF<4 then you have virtually the whole of CSS3 spec. March '12 browser visitor stats: IE6=0.9%, IE7=2.5%, IE8=9.4%, FF<4 =4.5%. Out of all of those its probably only worth catering for IE8 users. – Ozzy Apr 20 '12 at 19:18
  • 7
    Have you looked at [Can I Use](http://caniuse.com/)? – steveax Apr 20 '12 at 19:19
  • @Ozzy: Not really. Today's browsers still don't support half of the CSS3 spec. – BoltClock Apr 20 '12 at 19:20
  • 1
    @Ozzy - Ever looked how much css3 IE9 really implements? There is not much with virtually the whole – Sven Bieder Apr 20 '12 at 19:20
  • Well, it mostly supports the 10 features shown here http://www.w3schools.com/css3/default.asp. Then again IE9 hits about 5/10 but the other browsers hit much higher. – Ozzy Apr 20 '12 at 19:22
  • @steveax: Yes, but I'm pretty sure that there are more than the ones at http://caniuse.com/#compare=y&b1=ie+7&b2=ie+8. – JavaAndCSharp Apr 20 '12 at 19:23
  • 4
    @Ozzy: FYI, CSS3 has **more than 50 modules**. W3Schools doesn't even cover a proper subset; it seems to be picking at the most popular features people are talking about today. – BoltClock Apr 20 '12 at 19:25
  • @BoltClock'saUnicorn ahh okay... interesting. – Ozzy Apr 20 '12 at 19:27
  • 1
    Perhaps this will be useful: [CSS Improvements in Internet Explorer 8](http://msdn.microsoft.com/en-us/library/cc304082%28v=vs.85%29.aspx) – steveax Apr 20 '12 at 19:27
  • Should I bother writing an answer? I'm itching to do so since I stopped supporting IE7 last year, so I'm supporting IE8 at the very minimum now. – BoltClock Apr 20 '12 at 19:56
  • @BoltClock: Sure. The two 'answers' right now are just links - and neither link is complete. – JavaAndCSharp Apr 20 '12 at 20:11
  • You should probably write your own question, you know ;) – BoltClock Apr 20 '12 at 21:09
  • @BoltClock: Yeah, but the other question was pretty decent. BTW, until recently, I was relatively sure that you're not a unicorn. What happened? Did you get eaten alive by a wild meme? – JavaAndCSharp Apr 20 '12 at 21:49
  • @JavaAndCSharp: I suppose I was a little too happy on reaching 100k rep at the end of last month, and turned into a unicorn as a result :) – BoltClock Apr 20 '12 at 21:52

1 Answers1

10

Internet Explorer 8 is touted by Microsoft to be, among other things, fully CSS2.1 compliant. However, a number of bugs have been found so it's not actually fully compliant, but of course that doesn't mean it hasn't gotten better from version 7.

Anyway, the following are some of the well-known features introduced to IE8 that weren't present in IE7 (this list is by no means exhaustive):

JavaScript

  • Basic implementation of Selectors API level 1 (querySelectorAll())
  • Basic implementation of cross-origin resource sharing (cross-domain Ajax)
  • Native JSON parsing capabilities
  • DOM improvements (a probable cause of the fixes to CSS attribute selectors — see below)

JS APIs in HTML5

CSS

CSS2.1

  • IE8 has caught up with all (most?) of the CSS2.1 enhancements that were added to CSS1 properties, a list of which you can find at MSDN
  • Fixes to the box model with regards to collapsing margins, floating and stacking
  • inherit keyword
  • outline property
  • white-space property for pre-wrap and pre-line
  • Full support for display: inline-block on any elements
  • display: table
  • Generated content and automatic numbering: the :before and :after pseudo-elements, as well as quotes, content, the attr() function and CSS counters
  • Printing and paged media: the @page rule now works with the page pseudo-classes, typographic orphans and widows, and page breaks are supported to some extent
  • :active and :focus pseudo-classes
  • :lang() pseudo-class
  • The obscure syntax issues that affected the sibling combinators, CSS2.1's + and CSS3's ~, in IE7 have been corrected in IE8 (the * + html hack no longer works either)
  • The obscure bug that affected only DOM updates for the adjacent sibling combinator + has been corrected in IE8
  • The HTML attribute and DOM property issues that affected CSS2.1 and CSS3 attribute selectors in IE7 have been corrected in IE8
  • Some obscure bugs related to specificity have been corrected; one example is with the various dynamic pseudo-classes which I identified in IE6/7 in this answer

CSS3

  • box-sizing property in CSS3 for content-box and border-box (padding-box was originally a Mozilla proposal so it doesn't exist in IE; it wasn't added to the CSS3 UI spec until recently, and it's still at risk of removal as of the January 2012 Last Call Working Draft)
  • Some CSS3 features have been present in IE and proposed by Microsoft long before they were retconned into their respective specs, including @font-face, overflow-x/overflow-y, text-align-last, word-wrap (now overflow-wrap), and ruby text

HTML

Miscellaneous

And of course, some sources:

Community
  • 1
  • 1
BoltClock
  • 700,868
  • 160
  • 1,392
  • 1,356