Making Your Apps work with Internet Explorer 7 - ' Standards Support ' (
Page 3 of 6 )
Testing Conditions
I used my "ABC, Inc." test Web site to check out the new features of IE7. This test suite includes everything from straight HTML to some of the fanciest coding you can use within ASP.NET, including master pages, themes, and a variety of database programs. The suite also includes a shopping cart application created with ASP.NET. After I ran through this first test suite, I also tested IE7 using a cross-platform application that consists of both ASP.NET and Java elements. This application relies on Visual MainWin (see my review here).
ADVERTISEMENT
Unfortunately, the first problem I encountered — using the built-in Web server that comes with Visual Studio 2005 — is that localhost runs at a higher privilege level than do most Web applications. I placed both test applications on another computer, and accessed it remotely to ensure that IE7 would use the Internet zone. After I tested them in the Internet zone, I also tried the Intranet and Trusted Sites zones.
I'm not going to report on bugs in IE7; this is a beta product. For example, I noticed that some headers that employ CSS use the wrong cursor when you hover the mouse over them. Microsoft will likely fix these problems before they release the software. However, you should maintain a list of behaviors that differ from what you expect as you test your application. Make sure you report any problems to Microsoft, so they can work on them before IE7 is finished.
This article also doesn't discuss some of the more interesting additions to IE7, because I found they didn't affect compatibility. In other words, you don't have to worry about Rich Site Summary (RSS) or Asynchronous JavaScript and XML (AJAX) causing problems for your application because it's doubtful that your Web application uses them (at least not very much). However, you might want to consider implementing some of these new features in your application to gain some much-needed flexibility.
Standards Support
Developers won't have only negative things to consider while upgrading their applications. In particular, IE7 provides improved support for Cascading Style Sheets (CSS). This is an example of how better standards compliance can actually help developers.
CSS is the best way to add formatting details to your Web page, because you can create multiple CSS files to address specific user needs. The user can even substitute her own CSS file to meet specific requirements, such as support for a screen reader or other accessibility aid. You can see the application of CSS in ASP.NET 2.0 Web pages in the article, Working with Master Pages and Themes in ASP.NET 2.0.
IE7 provides CSS 2.1 support, which provides better positioning and improved compatibility with other browsers. Of course, if you've had to create any workaround for the IE6 behavior, you'll now need to add exceptions for IE7.
Over the years, some developers have relied on a bad practice of creating very odd URLs that don't really follow the rules. The result is that some URLs don't work well with all browsers (check here and here to see some examples of URLs that don't follow the rules). Crackers have been working hard on odd URLs too, but for a different reason. Malformed URLs represent a significant security concern that Microsoft has closed with IE7.
Consequently, if your Web site relies on URLs that include odd combinations of characters and non-standard formatting, you'll need to change your application to follow the standards. That's not a bad thing to do, even if it requires more development time in the budget. Changing this practice ensures that URLs you create work with all browsers, makes it easier for the user to track the URLs, and reduces the risk that an infected user will cause woe for your Web site.
IE7 provides enhanced support for graphics, too. For example, you can now display Portable Network Graphics (PNG) images without relying on odd workarounds to implement transparency. However, some older features are also gone. If you rely on the Dynsrc attribute of the <IMG> tag, you'll need to change your Web page, because it no longer works in IE7. Consequently, you'll want to check all graphics on your Web site. In addition, make sure you get the updated Internet Explorer Administration Kit (IEAK) for IE7 to enable other distribution options (you can find the beta version here).