A new Platform Preview (the second) of Microsoft's upcoming Internet Explorer 10 has been released by Microsoft, and this version brings numerous new HTML5 features that can significantly improve the web experience.
Microsoft is taking a cautious approach to introducing HTML5 features in its browser, since they have to support any features they add to the browser for the entire life-cycle of the browser, which is a considerable amount of time. Since HTML5, CSS3 etc are still developing, it doesn't make as much sense for Microsoft to include features their browser if the specification might change, and Microsoft will be left supporting an incorrect specification for a long time.
In this latest release Microsoft has added some of HTML5's most import web-app centric features:
- Web Workers:
Web Workers allow web applications to run scripts in a separate thread thus keeping the interface responsive even as heavy computation continues in the background. Web applications such as music editors could use this for rendering audio spectrum, image editors can run filters all while allowing the user to continue using the application.
- Asynchronous scripts:
HTML pages tend to load pages in the order in which content is defined in the code. This means that some trivial content could load before your main content, just because that script is included first. If the order of script execution doesn't matter such scripts could be loaded asynchronously using the async attribute.
- Drag and Drop support:
These features are already in use in many sites, that allow user to drag and drop files onto the page. For example, one can add attachment to GMail conversations by dragging a file onto the mail. One can save attachments to any folder by dragging them there from a GMail message. Even Google Docs allows uploading documents by dragging them onto their web interface.
- File API:
The File API will allow web developers to create web applications that interact with your local files, with your permission of course. For example, image editing applications could open an image locally, modify it locally and save it locally without requiring it to be send to the server.
- HTML5 Forms:
HTML5 includes many enhancements to forms and form validations. New input types are not supported, such as email, url etc. and so are new attributes such as "required", "placeholder" etc. DOM APIs for validation have also been added.
- Sandboxed iframes:
Sandboxed iframes place additional restrictions on the content inside the sandboxed iframe, with some control over what is to be allowed, and what restricted. This is useful while embedding untrusted content.
- CSS3 gradients:
Up till now web developers have needed to use a pre-generated image for using gradients anywhere in the web page. CSS3 makes it possible to generate them programatically.
- CSS3 Grid:
CSS3 grid alignment gives very flexible control over layout to web designers. The space on the page can be divided into rows and columns that take up predefined amounts of space, or expand automatically.
- CSS3 Multi-column:
With multi-column layouts, it is possible to more closely reproduce the kinds of layouts possible in print media.
- CSS3 Flexible Box Layout:
This is a new way of laying out elements using CSS that can greatly simplify the creation of complicated layouts as used by applications.
- Positioned Floats:
These have just been proposed to the W3C, by Microsoft and Adobe as a way to allow complicated magazine-like layouts in CSS. Positioned floats allow floating content to be freely placed inside a parent container instead of sticking to the right or the left. It will allow situation such as images (or other content) with text flowing around them on all sides.
This platform preview brings numerous other features than the ones listed here. More information can be found here. Or better yet, download the platform preview, and check out the live demonstrations at the Internet Explorer Test Drive site.