IEInternals

A look at Internet Explorer from the inside out. Note: @EricLaw left Microsoft in October 2012. This blog may be adopted by an IE team member in the future.

Browse by Tags

Tagged Content List
  • Blog Post: Brain Dump: Shims, Detours, and other “magic”

    Note: The “brain dump” series is akin to what the support.microsoft.com team calls “Fast Publish” articles—namely, things that are published quickly, without the usual level of polish, triple-checking, etc. I expect that these posts will contain errors, but I also expect...
  • Blog Post: Brain Dump: International Text

    Note: The “brain dump” series is akin to what the support.microsoft.com team calls “Fast Publish” articles—namely, things that are published quickly, without the usual level of polish, triple-checking, etc. I expect that these posts will contain errors, but I also expect...
  • Blog Post: The Intranet Zone

    Internet Explorer maps web content into one of five security zones. After the Local Machine Zone, the Local Intranet Zone is probably the most misunderstood of the Zones, and is a common source of confusion and compatibility glitches. Mapping into the Local Intranet Zone For the Trusted and Restricted...
  • Blog Post: Please Stop Polluting

    When I surf the web, I almost always have Fiddler running, and as a consequence I see a lot of “hidden” pollution in pages. Much of this cruft has built up over the years, copied from site to site, probably with little critical thought about its necessity. Please remove any META tags you...
  • Blog Post: HTTP Methods and Redirect Status Codes

    This crossed my Twitter stream earlier today: I’m not sure why we need a public service announcement to notify folks that Internet Explorer is behaving properly, but I guess there’s no harm in that. However, based on the lack of information provided, and the implication that this...
  • Blog Post: Default Integrity Level and Automation

    Over on StackOverflow , danimajo asked for help in an interesting scenario. Basically, he’s trying to drive Internet Explorer through automation, but finds that when he navigates to an Intranet site, the hidden browser instance appears and he can no longer control it. What’s going on? ...
  • Blog Post: Understanding Protocols

    For over a decade, Internet Explorer has enabled developers to extend the browser with new URL protocol schemes. These protocols can be one of two types: Asynchronous Pluggable Protocols - COM objects that implement the IInternetProtocolRoot interface and return content to URLMon, usually for rendering...
  • Blog Post: The Perils of User-Agent Sniffing, 2011 Edition

    I continue to be amazed at how often site-compatibility issues turn out to have a root cause related to User-Agent sniffing. For instance, earlier this year, someone wrote into the comments section on one of my posts noting that the HTML5 canvas art site WeaveSilk.com wasn’t working in IE9....
  • Blog Post: URL Fragments and Redirects

    I’ve worked on the Internet Explorer team for six+ years, and on web sites for a decade longer, so I’m understandably excited when I come across a browser behavior I can’t explain. Last week, I encountered such a mystery, and it took me quite a while to figure out what was going on...
  • Blog Post: Stylesheet Limits in Internet Explorer

    KB 262161 outlines the maximum number of stylesheets and rules supported by Internet Explorer 6 to 9. A sheet may contain up to 4095 rules A sheet may @import up to 31 sheets @import nesting supports up to 4 levels deep Some folks have wondered about the math that underlies these numbers...
  • Blog Post: Blog Roll

    These days, I struggle to find time to keep up with all of the tech news, but there are a few streams I make a special effort to stay on top of. Ex-Internet Explorer Dave Risney posts items of interest about URIs, web standards, FiddlerCore and myriad other interesting goodies over on his blog . ...
  • Blog Post: Proper Content-Type Header Syntax

    I’ve previously mentioned one site that wasn’t working properly due to sending a malformed Content-Type header. Today, I encountered another site with a similar problem, but in a subtly different way. Looking at the IE9 F12 Network tab, you can see the problem: As you can see...
  • Blog Post: IE9 Standards Mode Accepts only text/css for stylesheets

    I recently encountered a blog that isn’t looking right in IE9: The site renders just fine in other browsers, and when the page is put into Compatibility View by ticking the icon in the address bar: What’s going on here? It’s clear that a stylesheet isn’t...
  • Blog Post: HTTPS and Keep-Alive Connections

    As we explore network performance on the “real-world web”, one bad pattern in particular keeps recurring, and it’s not something that our many IE9 Networking Performance Improvements alone will resolve. The bad pattern is the use of Connection: close semantics for HTTPS connections...
  • Blog Post: Misbehaving HTTPS Servers impair TLS 1.1 and TLS 1.2

    Back in the summer of 2009, I blogged about Windows 7’s new support for TLS 1.1 and TLS 1.2 . These new protocols are disabled by default, but can be enabled using Group Policy or the Advanced Tab of the Internet Control Panel: Some adventurous Internet Explorer users have found that...
  • Blog Post: IE9 - Debugging a Canvas Game

    A few weeks ago , I discussed one compatibility issue we’d found when running a new HTML5 game . The game’s developers quickly fixed their site to return a proper character set declaration and we were able to get the game running in IE9. However, after playing the game for about 5 seconds...
  • Blog Post: Content-Length in the Real World

    Earlier in IE9 , we tried to change the WinINET networking component to reject as incomplete any HTTP responses for which the Content-Length header specified more bytes than the server actually sent back. It turns out that some sites and applications expect to be able to specify an incorrect Content...
  • Blog Post: IE9 Compatibility: Proper Use of the Charset Token

    Recently, during site-compatibility testing of IE9, we encountered a cool online game that does not load properly in Internet Explorer. Using the F12 Developer Tools’ Script debugger, the page immediately hits a script error (“ c00ce56e ”) while loading: A quick search on...
  • Blog Post: IE9 Compatibility–HttpOpenRequest and lplpszAcceptTypes

    The WinINET API allows the caller to specify the accepted MIME types for a given HTTP request by passing a null-terminated array of null-terminated strings using the lplpszAcceptTypes parameter. When calling the HttpOpenRequest API, applications must take care to either pass NULL, or a pointer to a properly...
  • Blog Post: URL Components in the DOM

    The IE team has been working our way through the remaining issues reported from internal and external testing of the IE9 Release Candidate. In the course of investigating one recent internal-site compatibility bug, I ran across an interesting interoperability issue that appears to have existed since...
  • Blog Post: Cross-Browser Interop and the HTML5 Canvas

    Technical Evangelist Giorgio Sardo just published a great post about HTML5 Canvas, responding to some concerns about bugs in the IE9 Beta. The post also takes a quick look at cross-browser interop for the Canvas object. It’s definitely worth the read: http://blogs.msdn.com/b/giorgio/archive...
  • Blog Post: File Download and Filenames

    Several months ago, I blogged about IE’s support for International Filenames on Downloads . Today’s post is a bit simpler and describes two cases when IE may rename downloaded files. Filename Extension and QueryString Parameters If a file download HTTP response does not contain a Content...
  • Blog Post: Challenge-Response Authentication and Zero-Length Posts

    From time-to-time, web developers contact the IE team reporting that they’ve encountered a problem whereby Internet Explorer submits a POST but fails to transmit the content body. This bodyless POST indicates via the Content-Length header that the POST is zero-bytes long, regardless of how much...
  • Blog Post: Trivia: Animated GIF Timing

    Every now and again, someone reports that Internet Explorer is "slow" when rendering an animated GIF file. Typically, they'll load a lengthy animation in Firefox and IE and note that it runs much more quickly in Firefox. Similarly, Chrome and Safari are "slow" while Opera is "fast." Conversely, there...
  • Blog Post: Downloads and International Filenames

    A few times a year, I get a question about Internet Explorer's behavior when it comes to downloading files that have non-ASCII characters in the filename, because different browsers have different behavior when handling such files. The server can suggest the name for a file download in one of two...
Page 1 of 2 (26 items) 12