{"id":541,"date":"2008-03-09T12:26:04","date_gmt":"2008-03-09T11:26:04","guid":{"rendered":"http:\/\/www.itwriting.com\/blog\/?p=541"},"modified":"2008-03-09T12:26:04","modified_gmt":"2008-03-09T11:26:04","slug":"mshtml-layout-engine-completely-rewritten-for-internet-explorer-8","status":"publish","type":"post","link":"https:\/\/www.itwriting.com\/blog\/541-mshtml-layout-engine-completely-rewritten-for-internet-explorer-8.html","title":{"rendered":"MSHTML: layout engine completely rewritten for Internet Explorer 8"},"content":{"rendered":"<p>MSHTML is the Windows component that renders HTML. It is part of Internet Explorer but also used by other applications (both from Microsoft and from third-parties) to embed HTML content; it is still sometimes called by its code-name, Trident. I&#8217;ve been interested in MSHTML for some time, and have worked on a free .NET wrapper called <a href=\"http:\/\/www.itwriting.com\/htmleditor\/index.php\">HtmlEditor<\/a>. <\/p>\n<p>At Mix08 I attended a session by Lead Program Manager Scott Dickens on cross-platform layout with IE 8. He told us that the layout engine in MSHTML &#8220;could not get us to where we needed to be&#8221; for the more standards-compliant IE8, which implements the CSS 2.1 spec. Therefore, the engine has apparently been completely rewritten. <\/p>\n<p>As an aside, Dickens mentioned that the IE team worked with other teams in Microsoft that have layout expertise in order to rewrite MSHTML &#8211; he didn&#8217;t say which, but one imagines the XAML\/WPF folk could have been helpful.<\/p>\n<p>I clarified this point later. MSHTML actually lives on in IE8, but contains both the old and the new layout engines as different code paths. If you specify a quirks mode in IE8, it will use the old layout engine; but if you ask for best standards support (now the default), it will use the new layout engine. However, where MSHTML is embedded into another application, it will still use the old layout engine by default. &#8220;For hosted Trident, it will maintain that IE7 compatibility,&#8221; Dickens told me, though it will still be possible to opt-in to the new layout engine.<\/p>\n<div class=\"wlWriterSmartContent\" id=\"scid:0767317B-992E-4b12-91E0-4F059A8CECA8:5e5dfa0d-a61a-4b00-901d-56ad8414c253\" style=\"padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px\">Technorati tags: <a href=\"http:\/\/technorati.com\/tags\/mshtml\" rel=\"tag\">mshtml<\/a>, <a href=\"http:\/\/technorati.com\/tags\/ie8\" rel=\"tag\">ie8<\/a>, <a href=\"http:\/\/technorati.com\/tags\/mix08\" rel=\"tag\">mix08<\/a>, <a href=\"http:\/\/technorati.com\/tags\/css\" rel=\"tag\">css<\/a>, <a href=\"http:\/\/technorati.com\/tags\/standards\" rel=\"tag\">standards<\/a><\/div>\n","protected":false},"excerpt":{"rendered":"<p>MSHTML is the Windows component that renders HTML. It is part of Internet Explorer but also used by other applications (both from Microsoft and from third-parties) to embed HTML content; it is still sometimes called by its code-name, Trident. I&#8217;ve been interested in MSHTML for some time, and have worked on a free .NET wrapper &hellip; <a href=\"https:\/\/www.itwriting.com\/blog\/541-mshtml-layout-engine-completely-rewritten-for-internet-explorer-8.html\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">MSHTML: layout engine completely rewritten for Internet Explorer 8<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[55,80,96],"tags":[],"class_list":["post-541","post","type-post","status-publish","format-standard","hentry","category-microsoft","category-software-development","category-web-authoring"],"_links":{"self":[{"href":"https:\/\/www.itwriting.com\/blog\/wp-json\/wp\/v2\/posts\/541","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.itwriting.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.itwriting.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.itwriting.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.itwriting.com\/blog\/wp-json\/wp\/v2\/comments?post=541"}],"version-history":[{"count":0,"href":"https:\/\/www.itwriting.com\/blog\/wp-json\/wp\/v2\/posts\/541\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.itwriting.com\/blog\/wp-json\/wp\/v2\/media?parent=541"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.itwriting.com\/blog\/wp-json\/wp\/v2\/categories?post=541"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.itwriting.com\/blog\/wp-json\/wp\/v2\/tags?post=541"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}