User Interface Internet Explorer 9 includes significant alterations to its user interface when compared with previous versions. These include: •
Pinned Sites: Integrates with the taskbar to make web site experience more like an application where users may "pin" a site and then return to it later like a shortcut. In the release candidate, users can pin a site and add more homepages to that site (e.g., pin
Facebook and add
Twitter as another homepage to that pinned site, so it would become a social "hub" of sorts). These special shortcuts can also be created by dragging the favicon from the address bar to the Desktop or to a folder in Windows Explorer; instead of the usual .url file extension, Pinned Sites use .website instead. •
Security-enabled Download Manager: Manages file transfers and can pause and resume downloads and informs if a file may be malicious. •
Enhanced Tabs and Tab Page: The new tab page can show most visited sites, and tabs are shown next to the address bar (there is an option to have a separate row, like in
Internet Explorer 8) with the feature of closing an inactive tab. Tabs can be "torn off" from the current window, which means they can be dragged up and down to be moved from one IE window to another. This also ties in with the
Aero Snap feature. •
Add-on Performance Advisor: Shows which third-party add-ons may be slowing down browser performance and then allows the option to disable or remove them. •
Compact user interface: Includes the removal of the separate search box found in Internet Explorer 7 and 8; also removed is the tab menu list found in Internet Explorer 8.
Scripting JavaScript engine Internet Explorer 9 (32-bit) features a faster JavaScript engine than Internet Explorer 8's, internally known as
Chakra. Chakra has a separate background thread for compiling JavaScript. Windows runs that thread in parallel on a separate core when one is available. Compiling in the background enables users to keep interacting with webpages while Internet Explorer 9 generates even faster code. By running separately in the background, this process can take advantage of modern multi-core machines. In Microsoft's preliminary SunSpider benchmarks for the third 32-bit Internet Explorer 9 Platform Preview, it outperformed the Internet Explorer 8 engine by a factor of 10 and also outperformed the newest Firefox 4.0 pre-release. Microsoft provided information that its new JavaScript engine uses
dead code elimination optimization for faster performance, which included a small section of code in the SunSpider test as dead code. Robert Sayre, a Mozilla developer investigated this further, showing that Internet Explorer 9 Preview 3's dead code elimination had bugs, providing test cases exposing these bugs resulting in wrong compilation. After its final release, 32-bit Internet Explorer 9 has been tested to be the leading mainstream browser in the SunSpider performance test. The engine significantly improves support for ECMA-262:
ECMAScript Language Specification standard, including features new to the recently finalized Fifth Edition of ECMA-262 (often abbreviated ES5). The Internet Explorer 9 browser release scored only 3 faults from 10440 tests in the Test262 Ecmascript conformance test (Ver. 0.6.2 5-Apr-2011) created by
Ecma International. The 64-bit version of Internet Explorer 9, which is not the default browser even on 64-bit systems, does not have the JIT compiler and performs up to 4 times slower. This is the highest pass rate amongst CSS 2.1 implementation reports submitted to W3C. CSS3 improvements include support for the following modules: • CSS3 2D Transforms • CSS3 Backgrounds and Borders • CSS3 Color • CSS3 Fonts • CSS3 Media Queries • CSS3 Namespaces • CSS3 Values and Units • CSS3 Selectors
HTML HTML Media Internet Explorer 9 includes support for the HTML media tags video and audio. The
audio tag will include native support for the
MP3 and
AAC codecs, while the
video tag will natively support
H.264/MPEG-4 AVC. Support for other video formats, such as
WebM, require third-party plugins.
Inline SVG support The first Internet Explorer 9 Platform Preview has support for: • Methods of embedding: inline HTML, inline XHTML, , full .svg documents • Structure: , , , , • Shapes: , , , , , , • Text • Filling, Stroking, (CSS3) Color • DOML2 Core and SVGDOM • Events • Presentation Attributes and CSS Styling • Transform definitions: translate, skewX, skewY, scale, rotate SVG elements that are supported in the Platform Preview are fully implemented. Elements that exist in the Platform Preview have corresponding SVGDOM support and can be styled with CSS/presentation attributes. The final build of Internet Explorer 9 also supports: • Methods of embedding: , , , css image, .svgz • Gradients and Patterns • Clipping, Masking, and Compositing • Cursor, Marker • Remainder of Text, Transforms, Events
Web typography Internet Explorer was the first browser to support web fonts through the @font-face rule, but only supported the
Embedded OpenType (EOT) format, and lacked support for parts of the CSS3 fonts module. Internet Explorer 9 completed support for the CSS3 fonts module and added
WOFF support. It is the first version of Internet Explorer to support
TTF fonts, but will only use them if none of their embedding permission bits are set.
Navigation Timings Internet Explorer 9 implements the new W3C Navigation Timings format. Microsoft has been a part of creating this format during the development of Internet Explorer 9.
Tracking Protection Internet Explorer 9 includes a
Tracking Protection feature which improves upon Internet Explorer 8's
InPrivate Filtering. Internet Explorer 8's InPrivate Filtering blocked third-party content using an XML list which had to be imported or automatically built a list by observing third-party servers that users kept interacting with as they browsed the web, and once a server showed up more than a set number of times, InPrivate Filtering would block future connections to it Internet Explorer 9 supports two methods of tracking protection. The primary method is through the use of Tracking Protection Lists (TPL) which are now supplied by
internet privacy-related organizations or companies. Tracking Protection by default remains on once enabled, unlike InPrivate Filtering which had to be enabled each time Internet Explorer 8 started. When a TPL is selected, Internet Explorer 9 blocks or allows third-party URI downloads based on rules in the TPL. Users can create their personal TPL's or select a TPL supplied by a third party . The other method is the use of a
Do Not Track header and DOM property. Browser requests from Internet Explorer 9 include this header whenever a TPL is selected. Websites that follow this header should not deliver tracking mechanisms in their websites. At the moment following this header is a voluntary code of conduct but this method could in future be enforced by government legislation. These tracking protection methods were submitted to W3C for standardization. In addition, Internet Explorer 9 is compiled with the new C++ compiler provided with Visual Studio 2010. This compiler includes a feature known as Enhanced GS, also known as
Stack Buffer Overrun Detection, which helps prevent stack buffer overruns by detecting stack corruption and avoiding execution if such corruption is encountered. In Internet Explorer 9, the protection against malware downloads is extended with SmartScreen Application Reputation. This warns downloaders if they are downloading an application without a safe reputation from a site that does not have a safe reputation. In late 2010, the results of browser malware testing undertaken by NSS labs were published. The study looked at the browser's capability to prevent users following
socially engineered links of a malicious nature and downloading malicious software. It did not test the browser's ability to block malicious web pages or code. According to NSS, Internet Explorer 9 blocked 99% of malware downloads compared to 90% for Internet Explorer 8 that does not have SmartScreen Application Reputation feature. In early 2010, similar tests gave Internet Explorer 8 an 85% passing grade, the 5% improvement being attributed to "continued investments in improved data intelligence". By comparison, the same research showed that Chrome 6, Firefox 3.6 and Safari 5, which all rely on Google's Safe Browsing Service, scored 6%, 19% and 11%, respectively. Opera 10 scored 0%, failing to "detect any of the socially engineered malware samples". Manufacturers of other browsers criticized the test, focusing upon the lack of transparency of URLs tested and the lack of consideration of layered security additional to the browser, with
Google commenting that "The report itself clearly states that it does not evaluate browser security related to vulnerabilities in plug-ins or the browsers themselves", and
Opera commenting that the results appeared "odd that they received no results from our data providers" and that "social malware protection is not an indicator of overall browser security". Internet Explorer 9's dual-pronged approach to blocking access to malicious URLs, SmartScreen Filter to block bad URLs, and Application Reputation to detect untrustworthy executables, provides socially engineered malware blocking of any stable browser version. Internet Explorer 9 blocked 92 percent of malware with its URL-based filtering, and 100 percent with Application-based filtering enabled. Internet Explorer 8, in second place, blocked 90 percent of malware. Tied for third place were Safari 5, Chrome 10, and Firefox 4, each blocking just 13 percent. Last was Opera 11, blocking 5 percent of malware.
User agent string Due to technical improvements of the browser, the Internet Explorer developer team decided to change the
user agent (UA) string. The Mozilla/4.0 token was changed to Mozilla/5.0 to match the user agent strings of other recent browsers and to indicate that Internet Explorer 9 is more interoperable than previous versions. The Trident/4.0 token was likewise changed to Trident/5.0. Because long, extended UA strings cause compatibility issues, Internet Explorer 9's default UA string does not include
.NET identifiers or other "pre-platform" and "post-platform" tokens that were sent by previous versions of the browser. The extended string is still available to websites via the browser's .userAgent property, and is sent when a web page is displayed in
Compatibility View mode.
Extensibility In Internet Explorer 9, the extensibility mechanisms for
Browser Helper Objects (BHOs) and
toolbars remain the same. Not loading BHOs or toolbars improves startup time, but limits the ability of developers to augment the user experience through these extensibility mechanisms. ==Removed features==