first-letter selector in anchor crashes IEWin

Using the :first-letter selector (such as to do drop-caps) crashes IE 5.5 and 6.0 WinXP when that first letter is part of an underlined link which is visible on-screen.

Reported to MS in February 2004 - may be fixed in SP2, but I haven't been able to verify it.
:first-letter doesn't work in IE 5.0 Windows, so that browser doesn't crash.

Rare in that this crashes the browser, rather than just displaying in a funny manner.

Test page Workaround is not included
Reported by: Dave Polaschek.

Explorer 5-6 Windows | Reported on 10 January 2005.

This site is no longer maintained. I’m sorry, but it’s just too much work for too little return. You can continue to browse old bug reports, though.




Search reports by browser:

Atom RSS

Comments

(Add your own)

1 Posted by Tino Zijdel on 10 January 2005 | Permalink

Confirming crash in windows XP with SP2 installed

2 Posted by Wout on 10 January 2005 | Permalink

Crashes IE6 and IE5.5 on win98 too.

3 Posted by Chris Hester on 11 January 2005 | Permalink

On the test page, it crashes before I reach the link, as soon as the line above it ("This space intentionally left blank") comes into view. [IE6 SP2]

4 Posted by Chris Hester on 11 January 2005 | Permalink

The test page is void. If I use the example code shown, the bug is not seen. If I save the entire page and only allow the 'crash' stylesheet to load, again the bug is not shown.

So I did some testing and found that it only crashes IE when a second stylesheet is also loaded on the test page. This defines the colours! After a while I reduced the crash to this specific line of code:

ul {background-color: white;}

Add it and the page crashes. Remove it and the first-letter with the link can be viewed safely (the browser does not crash). So I think there's more to this than meets the eye.

5 Posted by Fox Michaels on 15 January 2005 | Permalink

Yes - Chris is correct - the bug is actually only on any background effect on the first letter.. If you have any background: tag, IE will crash.. Faulty MSHTML.DLL file.

6 Posted by James Ojaste on 17 January 2005 | Permalink

I was able to reduce the problem to this:

1) A tag with the CSS background property set (with a selector or style attribute)

2) A descendant tag containing text where the second character is underlined (the first doesn't matter), and there must be no whitespace between the first and secnod characters (though there can be HTML).

3) A "parent child:first-letter" selector (parent must be referenced) that affects the margins (and a px/ex/em unit designator must be present.

7 Posted by Richard on 24 March 2005 | Permalink

It doesn't crash for me using IE6 SP2*. It doesn't look right, but it doesn't crash.

[* 6.0.2900.2180.xpsp_sp2_rtm.040803-2158]

8 Posted by Ingo Chao on 30 July 2005 | Permalink

Another dissection attempt can be seen here.
http://www.satzansatz.de/cssd/pseudocss.html#fltadjacent

9 Posted by Brian Fink on 21 December 2005 | Permalink

I too came across this problem. I discovered more triggers to the bug. Here they all are:

- context tag:first-letter selector
- margin: or padding: on :first-letter (doesn't matter which)
- context with background: attribute
- any tag around the second letter
- no hasLayout==true; i.e. no layout properties have been set

The last in the list is the key to having the page render properly, and it can be activated by using zoom: 1; but if you should be so unfortuanate as to click inside the offending element, the browser will crash anyway. It also does this on Windows 2000, and it doesn't matter what mode the browser is in, whether quirks or strict mode.

10 Posted by AndréCassal on 19 October 2006 | Permalink

When use :first-letter in an anchor with a :visited in another place too.

a:visited{color:red}

ul.step a:first-letter{font-size:2em}

Every anchors will have the first letter red.