IE10 Platform Preview 2, the same HTML5 engine seen in the recent public “Windows 8” demos, is now available for download. With this update, IE10 continues to deliver support for site-ready HTML5 technologies as well as improving performance:
This video shows some of the HTML5 technologies in the second IE10 Platform Preview in action.
With the second Platform Preview, developers can start working with several site-ready HTML5 technologies for building beautiful, interactive Web applications with great performance and security. You can read the full list here in the IE10 developer guide:
- Beautiful and interactive Web applications are easier to deliver with support for several new technologies like CSS3 Positioned Floats, HTML5 Drag-drop, File Reader API, Media Query Listeners and initial support for HTML5 Forms.
- HTML5 Application performance improves across the board, as well as the ability to deliver better performance with more efficient use of battery life with new technologies like Web Workers with Channel Messaging, Async script support, and others.
- Web application security improves using the same markup with support for HTML5 Sandbox for iframe isolation.
IE10 continues IE9’s precedent of enabling Web applications to do more in the browser without plug-ins. It also continues the pattern of offloading work to the parts of a PC that are best suited for them, like the GPU for graphics, and different processor cores for background compilation of JavaScript.
Beautiful and Interactive Web Applications
Beautiful and interactive Web applications are easier to deliver with IE10’s support of HTML5 technologies. For example, IE10 supports CSS3 Positioned Floats to enable text flows around figures on a page, building on the first Platform Preview’s support for CSS3 grid, multi-column, and flexbox:
Click here to try Positioned Floats and see how text lays out around floating elements for a more natural reading experience.
Beauty starts with reliable, consistent parsing behavior. This IE10 Platform Preview includes parsing improvements from the W3C HTML5 spec, reflecting that developers can now expect the same behavior in all compliant browsers even for imperfect or invalid markup. HTML5 is the first version of HTML to define the behavior of invalid markup. Rather than relying on “fix-up” rules that vary from browser to browser, HTML5 parsing behavior is now specified in a way that developers can count on it. IE10 now supports the File Reader API and HTML5 Forms validation, as well as advanced hit testing for more complex selection scenarios like graphics editors, games, and other applications that typically use multiple graphics layers.
This test drive illustrates how different browsers today give different results when running the same Web pages even though they all claim support for the same standards. The quality and correctness of different browsers’ HTML5 engines vary widely. To fulfill the goal of interoperability and same markup, the test suites under development at standards bodies continue to grow in importance for the Web developer community. This test drive also illustrates the performance differences between different implementations of hardware acceleration.
This shows the results in IE10 Platform Preview, Firefox 5, and Chrome 13. Click here to try the How Stuff Works demo and see how hardware accelerated HTML5 canvas works together with CSS3 gradients.
Web Application Performance
You can see additional differences in performance between the different browsers in the Fireflies test drive. Having HTML5 video, and audio, and canvas, and CSS3 gradients work well together is important because developers will combine technologies in real-world Web applications.
IE10 is the first browser to support several new performance APIs coming out of the W3C’s working groups. The test drives for setImmediate, requestAnimationFrame, and PageVisibility illustrate how these APIs enable developers to make the Web faster and more responsive even while Web sites make better use of battery life on mobile devices.
Web workers enable a host of new programming scenarios for the Web. With them, Web applications can be more responsive by offloading complex JavaScript to run in the background. For example, casual games might choose to run the logic for the “computer player” in a Web worker while users take their turn. This test drive (link) demonstrates the performance benefit of offloading work from the page to a Web worker. (Note that FF5 does not support Channel Messaging, an additional feature of this technology that the test drive can use.)
Click here to try the Fountains demo and see how Web Workers delivers more responsive experience and consistent frame rates.
With support for Async script, developers can control the impact on Web page performance of their scripts downloading from their sites.
Web Application Security
This IE10 Platform Preview now supports HTML5 Sandbox and iframe isolation, an important component to Web application security:
Click here to try the HTML5 sandbox demo. Note that Firefox 5 does not support this.
We have communicated specific privacy concerns (link) about the design of one aspect of Web Workers (link) to the W3C working group, along with a proposal for how to resolve the issue.
Looking Forward
Developers will be able to build even more amazing sites and applications (beyond these, or these) with IE10’s improved HTML5 support. As different browsers support developers using the same markup to achieve the same results with great performance, we can all realize the promise of HTML5 applications. To this end, we have posted over 270 new tests to the IE Test Center and submitted them to the standards bodies.
With Platform Previews, developers and technology enthusiasts can try out new technologies and provide feedback without any confusion about which technologies are site-ready and which are experimental. This approach enables the technical community to work through safety issues (for example, the privacy one above, or this one) before putting any consumers at risk, and minimizes wasted effort re-writing consumer-facing sites. This post HTML5, Site-Ready and Experimental offers more detail on this topic. For example, initial support for the FileAPI started with HTML5 Labs; based on feedback there, we have added it to the IE Platform Preview.
Because of this approach to productizing Web technologies, Microsoft will support IE10 for 10 years after its release, honoring the same product lifecycle commitments as Windows itself. This blog post (link) describes some of the scenarios and customers for which this is important.
We continue to recommend that developers use feature detection to accommodate the many, many browsers (for example on mobile devices) that do not support particular features:
// check if this browser supports channel messaging
if (window.MessageChannel) {
/* Use channel messaging in this browser */
}
You can find a full list of new functionality available to developers in the IE10 developer guide here. We look forward to continuing to engage the community and listening to your feedback.
Dean Hachamovitch
P.S. We encourage developers to try out the improved innerHTML support in this second Platform Preview of IE10.