Archive for the 'cross browser' Category

Internet Explorer 8 Readiness Toolkit

Wednesday, March 5th, 2008

How do I make my site ‘light up’ with Internet Explorer 8?

Internet Explorer 8 Readiness Toolkit

Looks like IE8 is knocking off all the standard, next-release browser stuff, weighing in with cross-domain requests, DOM storage and a selector API. HTCs are still there (hooray?). No word on conditional comments or compilation, but I’d guess they would have publicized taking them out.

Some new things:

  • Opening up the pipeline to six requests per server: thanks, because the old 2-requests per really hurts!
  • Building in online- and offline-detection right in the browser: I’d imagine this will hook into the Silverlight offline API somehow someday. It kind of mitigates the need for something like Google Gears when coupled with DOM storage, too.
  • “AJAX navigation”: this looks to be a way of maintaining state in an application by writing directly to the history hash. Really, really nice if they’ve done this. For example, I go to a page, click a tab and the tab loads Ajax-ically. I can then update the browser’s address bar showing the new tab and store this new location in history, letting me bookmark the tab or, later on, jump back with a click of the back button. Entire libraries have popped up trying to handle this state management, and here’s a solution that does it in the browser. Could be powerful stuff.
  • Cross-IFRAME requests: Paul Irish and I had a discussion on this last week. IE8 has an API built for it, rendering a bunch of that hackery moot as IE has built an API around it.

IE8 is looking like a blend of catching up, fixing bugs, and innovating. I really like some of the features they’re putting in, but, until other browsers have them, they’re introducing another non-standard way of doing things. But, like innerHTML or XMLHTTPRequest, maybe they’ll help standardize things a bit.

Tags:

IEBlog : Microsoft’s Interoperability Principles and IE8

Tuesday, March 4th, 2008

In light of the Interoperability Principles, as well as feedback from the community, we’re choosing differently. Now, IE8 will show pages requesting “Standards” mode in IE8’s Standards mode. Developers who want their pages shown using IE8’s “IE7 Standards mode” will need to request that explicitly (using the http header/meta tag approach described here).

IEBlog : Microsoft’s Interoperability Principles and IE8

A pretty dramatic reversal. Actually, a complete 180: you’ll need to opt back to IE7-mode in IE8, which will use it’s standards-compliant rendering mode by default.

I guess I could go either way on this one. One could argue that this is default behavior on the web: as Webkit or Gecko improve in Safari and FireFox, older pages might certainly break in them and it’s the responsibility of developers to keep their pages compliant. On the other hand, one could argue that this harms user experience as there will be a vast amount of pages that will never be updated, ever.

I’ll side with the standards on this one, though: web standards are there for a reason, and I’m glad IE will finally join in with honoring them. They’re standards for a reason: they’re not something that should be opted into; they’re a default way of behaving that IE8 seems to be getting right in honoring.

Tags: , ,

Well, I’m Back: <META HTTP-EQUIV="X-BALL-CHAIN”>

Wednesday, January 23rd, 2008

The IEBlog predictably announces that Web developers will have to use a tag or HTTP header to get IE to treat a page with post-IE7 standards compliance. Obviously a lot of people are going to be upset about this. I’m actually just puzzled. I see the business argument for taking this approach in the short term, but in the long term, it seems to impose a crippling burden on IE development.

Well, I’m Back:

Via Roger Johannson’s 456 Berea St., here’s a nice counter argument to the "IE8 Standards Meta Tag Solves All Our Problems" sentiment. Some good points here, and it echoes my question about code footprint size.

Tags: ,

IE8: Browser-Based Site Versioning

Tuesday, January 22nd, 2008

We could spend hours explaining why our sites broke, but wouldn’t it be better if they didn’t break in the first place?

A List Apart: Articles: Beyond DOCTYPE: Web Standards, Forward Compatibility, and IE8

Snook has something on it, too. Interesting to see how they were going to do it. I find the concept interesting (kind of like "freezing" your Rails version), but I wonder how much overhead it will cause browser vendors: will they have to keep old versions of the same rendering engine lying around, just in case?

Tags: , , ,

Conditional Comments + IE-only Stylesheets

Friday, January 11th, 2008

Over at the day job, I ran into a situation where I couldn’t use conditional comments to insert my IE-only stylesheets into the Document. In fact, I didn’t have access to the <head> of the Document at all.

Without any access to the <head> at all, how can we add a stylesheet to the Document? Well, we can do it improperly, by using JavaScript’s document.createStylesheet method to cram our CSS into the body of the Document. Is this where it should go? No. Does it work: yes.

What about making that IE-only? Conditional compilation. By placing the document.createStylesheet call inside some conditionally compiled JavaScript, we’ve achieved the same effect as our conditional comment would. But, what about targeting a specific browser?

With conditional compilation, we have access to the @_jscript_version property of the browser. IE7 uses Jscript version 5.7 and IE6 uses 5.6. Knowing that, we can create an IE6-and-lower-only stylesheet with a one-line test:
@if (@_jscript_version < = 5.6) document.createStylesheet('/path/to/ie6andlower.css');. Voila! A working structure.

Put it all together, and we have a solution that looks something like this:

        /*@cc_on
            document.createStyleSheet("/css/all_ie_fixes.css");
            /*@if (@_jscript_version < = 5.6)
                document.createStyleSheet("/css/ie_6_and_below.css");
            /*@end
        @*/

Is it pretty? Nope, but it works.

Tags: , , , , ,

Ajaxian » Infamous IE hasLayout is toast

Tuesday, January 8th, 2008

HasLayout will be history with IE8 (it was an internal data-structure to begin with and should have never been exposed).

Ajaxian » Infamous IE hasLayout is toast

This is good if they patch up their rendering engine so that we don’t need to "force" layout to get things to work. This is bad if they don’t patch up their rendering engine and we lose the ability to get things to work through "forcing" layout.

Tags: ,

Building YUI’s Rich Text Editor

Tuesday, August 14th, 2007

A really nice look at what it took to get YUI’s Rich Text Editor up and running. Good detail on the ins-and-outs of building an application like this that needs to support all major browsers.

technorati tags:, ,

I'm Reading…
Search This Site
You are currently browsing the archives for the cross browser category.

AddThis Feed Button

Need great hosting?

Categories