SharePoint 2010 is stated to support any 32-bit versions of Internet Explorer 7 or newer. However, significant performance degredation is inherent if using Internet Explorer 7 manifesting as high CPU-usage. While this elevation of CPU usage affects overall performance it is most apparent in regards to the triggering and handling of mouse events by the browser. For example, system reaction times to events such as onmouseover or onmouseout may be visibly delayed.
Such performance issues are due to how Internet Explorer 7 handles CSS, specifically the :hover pseudo-class. It’s a well known issue that Internet Explorer 7 doesn’t support :hover on objects other than anchor tags unless a strict !DOCTYPE is defined. Unfortunately, the corev4 stylesheet of SharePoint 2010 uses the :hover pseudo-class “improperly” (read: for Internet Explorer); in some instances, it doesn’t explicitly use the pseudo-class on an anchor tag and in other instances it even uses it explicitly on other tags! Please see below for a couple of examples:
.ms-socialNotif:hover {}
tr.s4-itm-selected:hover {}
This performance degredation is most apparent when numerous list items are displayed on a page. According to Microsoft, performance degredation can occur if displaying more than 200 list items in a Data View Web Part, however I have experienced the issue when displaying as few as 20. The suggested resolution: “Use Internet Explorer 8.”
Note: this issue prevails in Internet Explorer 8, but to a much lesser degree.
UPDATE:
If upgrading to Internet Explorer 8 or newer isn’t a viable option, I recommend limiting the number of displayed list items to as few as possible. The performance degredation increases with the number of list items display, so the only realistic solution is to manage the performance degredation rather than resolve it. Alternatively, it is presumable that the masterpage could be updated to load customized versions of the default style sheets if Internet Explorer 7 is detected as the client agent.
2 Comments
Thank you for pointing out the bad :hover tags, but is there a resolution if we are already using Internet Explorer 8?
Sean,
Although the issue will technically affect you, it should not be significant. Internet Explorer 8 has many improvements over Internet Explorer 7 including enhanced handling of JavaScript and CSS. Upgrading to Internet Explorer 9 should alleviate the situation even further, but may not be an option depending on your IT policies.
If a “real” resolution is necessary, you could create custom CSS for SharePoint 2010 and load it instead of corev4.css (presumably using either a custom masterpage or JavaScript).
We would love to hear about the solution you choose!