IntroductionChrome Frame brings Chrome’s goodness to older versions of Internet Explorer. In general almost all the features offered by Chrome’s rendering engine are readily available in Chrome Frame. So feature wise, Chrome Frame is very similar to Chrome and the differences are minor. They start to appear where the boundaries of Chrome and Internet Explorer meet. Those areas are popup windows, some user interface features and network stack. Lets look at some of those feature differences.HTML5What worksChrome Frame supports HTML 5 features like canvas. WebM, <video>, <audio>, WebGL, CSS animations, WebSockets on the same lines as Chrome.What does not workAppCacheAppCache does not work as expected since it is supported by the Chrome network stack. Chrome Frame uses Internet Explorer’s network stack. Popup windows and window.openerPopup windows get complicated as either, or both of the main window and its popup can be rendered by Chrome Frame. We have two main cases:
But.. this sucks, how do we communicate between windows on different domains? There are workarounds:
A demo of this approach can be found here. NETWORK STACKChrome Frame uses Internet Explorer’s network stack, i.e. HTTP/HTTPs requests issued by Chrome will be routed through Internet Explorer. This ensures that Chrome Frame shares the same session cookies, cache and honors Internet Explorer settings like proxy servers.Chrome Frame routes HTTP/HTTPs requests to the host browser (IE) in the following cases:
LimitationsRequests initiated by the AppCache layer in the Chrome browser will go out through the Chrome network stack. This the reason why HTML5 AppCache does not work in Chrome Frame. When HTTPs urls are loaded in Chrome Frame, certificate information is not passed to Chrome. This means that Chrome Frame will not be able to display information like certificate information, whether the connection is encrypted, etc for these pages. This is a User Interface issue only. User InterfaceChrome Frame attempts to seamlessly integrate in Internet Explorer, i.e. pages loaded in Chrome Frame would provide a consistent user experience. Differences listed below:Chrome Frame pages display Chrome’s context menu. Page InformationThe Page properties menu option in Internet Explorer will not display reliable page information for Chrome Frame pages. Page information will not be available for HTTPs URL’s rendered in Chrome Frame. Please refer to the Network Stack section for reasoning behind this. IE encoding menu optionThis option which displays the list of encodings used by pages will not work for pages rendered in Chrome Frame.IE color settings/fontsPages rendered in Chrome Frame will not honor Internet Explorer color settings and fonts.MISCELLANEOUS DIFFERENCESIE Extensions/AddonsInternet Explorer extensions like Google Toolbar, Yahoo Companion, etc which expect to have access to the web page DOM to perform actions on the page will not work on Chrome Frame pages. Some other Internet Explorer extensions like Askbar, mgToolbarIE, SweetIM Toolbar, gbieh.dll, and G-Buster Browser Defense may crash when Chrome Frame pages are displayed. |


