When asked about how similar IE9 for the desktop and IE9 for Windows Phone 7 are, I often say… it’s a direct port. Turns out I was wrong, there are infact 17 difference that you should probably bear in mind. 17 is a pretty small number but knowing these upfront will save you a ton of time if you end up having to debug your website on WP7.
First there are a handful of features that have been added:
- GPS support for HTML5 geolocation. Windows Phone uses the location stack on the device and uses GPS if it is available. The desktop uses various other methods which do not require GPS (since most machines do not have this feature)
- Support for Viewport. Width,height, user-scalable. Whilst the following features are available in some browsers, the minimum-scale, maximum-scale, and initial-scale properties are currently unsupported for Internet Explorer Mobile.
- Support for the CSS property –ms-text-size-adjust.
Now for the things that are unsupported (with the Biggie being at the top)
- Downloadable fonts such as EOT, TTF/OTF and WOFF fonts. Whilst the font-face tag is supported the mobile browser will not attempt to download these font. A list of all the supported fonts on WP7 can be found here.
- Backward compatibility for Internet Explorer 8 documents. Internet Explorer Mobile renders these documents in Internet Explorer 9 mode.
- Cross-window communications, such as the ability to target a window by using script
- Multi-stream HTML5 audio
- CMYK image support
- VBScript support
- ActiveX support
- Extensibility through browser helper objects, toolbars, and other related items
- Active document support
- Older web technology support, such as binary behaviors, HTCs, HTML+TIME, and VML
- Full support for complex script languages in all document modes
- Surrogate pair support
- JIT support for Jscript
- <input type=”file” /> will render but since the 7.5 update it no longer allows you to upload files in way it did before the the 7.5 update.
Hey! Does “no Cross-window communications” mean there is not postMessage or that it just works with iframes?
Thanks for the list!
Wow! No SVG fonts either??
It also does not support touch, which I know is not something IE 9 supports. But despite not supporting the touch API it also does not fire mousemove events, which makes building web apps really rough.
@Martijn, SVG fonts are a nasty hack. Shut up.
Pingback:Weekly #23 | fitml.com Blog
@Ryan, if they work, it’s a hack well spent. Plus it’s not nasty at all – it’s completely standards compliant. I’d call it a “strange trick”.
@thebeebs, do you know of a similar list of differences for desktopmobile Safari?
Pingback:The Differences betwen IE9 on the desktop and IE9 on WP7 « Penberthy Family Network
@Martijn Does any differences of CSS3 support about IE9 for windows phone?
Pingback:Noticias 26-11-2011 - La Web de Programación
Almost a step back. I had font-face working on wp7 ie7. wp7.5 ie9 just won’t play ball – still, although I own a wp7.5 device it’s still not my major test device. Shame – it’s a slick bit of kit.
@Jon Warner sorry to hear that. Did you have WP7.0 working using EOT fonts?
Adam these are all of the differences. Font-face is a CSS3 difference. There are no others that I know about.
@Martijn IE dosen’t support SVG fonts in IE9 or WP7 IE9. Since WOFF is now the defacto standard for fonts I think it’s a standard that has been left out in the cold. Is there any reason why you think SVG fonts are superiour to WOFF? I’d be interested to hear.
@juan postMessage works with iFrames… here is a demo http://lab.thebeebs.co.uk/mobile/ but you can’t communicate with other windows.
Pingback:Font-Face isn’t working on IE9 inside of Windows Phone 7. - thebeebs - Site Home - MSDN Blogs
Pingback:Font-Face isn’t working on IE9 inside of Windows Phone 7. | MSDN Blogs
@thebeebs,
I was recently reading a weblog entry by Ben Vanik (former Microsoft Live Labs developer, now at Google) about a simple image pyramid demo that he wrote in 500 lines of Javascript: http://benvanik.tumblr.com/post/14225281899/simple-image-pyramid-demo-in-500-lines-of-javascript
I fired up his demo in IE9 on my laptop and it works very well indeed.
http://bit.ly/pyramiddemo
I then fired it up in IE 9 Mobile and it did not work. At all.
So, my question is, “Why not?”
Ben says that the demo just requires Javascript and GPU accelerated HTML5 Canvas, which your post above would seem to claim that you support, so where are things going wrong?
That’s way more clever than I was exeptcing. Thanks!
Open IE9, download Firefox, set default browser. Job done.
Also, requiring you divulge your information to post your opinion. Fucking waste of time.
Pingback:How to build Mobile websites - thebeebs - Site Home - MSDN Blogs
To be honest with the exception of web fonts, I should almost thank Microsoft for leaving all the legacy bullshit like ActiveX, VBScript, JScript, VML etc.
Could you elaborate on the “Surrogate pair support” bit? Surrogate support where? In JavaScript?
ie9 mobile also lacks many events related to html5 video playback like e.g. the “ended” event which should normally be fired when an embedded html5 movie has finished playing.
Also some properties like e.g. video.duration or video.currentTime do not work..