IE8 and CSS @font-face crashes the browser
For anyone else that encounters this issue, in my case it came down to some bad markup right before the closing </body>
tag. Scouring through the masterpage and removing block by block eventually resolved it.
@font-face not loading in IE8
Firstly I would check that the font files are actually being served. It could be as silly as a relative path not being correct - although in this case I doubt it. Use a tool like Charles or Fiddler for this. These tools should always be the first port of call for checking that files are being served as expected.
I would also check that the extensions/mime types are set up in the site's config, or in IIS's config.
Icon Font causes Compatibility Mode in IE8
Long story short, there are two ways to solve this:
- assign to the
Basic Latin Range
:U+0020 to U+007F
- assign to the
Low Surrogates Range
:U+DC00 to U+DFFF
I found this through unit testing various ranges with my custom icon font using a grunt-webfont
build process.
I didn't exhaustively test every range, but I found these two to work, and to be sufficient.
Notes: The Basic Latin Range starts from U+0020
not U+0000
.
The Low Surrogates Range
has a larger address space, and so is preferrable if you have a lot of glyphs. It also has the advantage of rendering square boxes if the glyph fails to load, as opposed to assorted Latin characters as the Basic Latin Range
does.
Font Face issues in Internet Explorer 8
Yes it's an issue with IE - for IE8 and below - one solution is to separate out the links for each font in a conditional statement - it doesn't like long font stack trace in the link attribute.
<!--[if lte IE 8]>
<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Tangerine" />
<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Open+Sans" />
<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Droid+Sans" />
<![endif]-->
Font Face issues in Internet Explorer 8
Yes it's an issue with IE - for IE8 and below - one solution is to separate out the links for each font in a conditional statement - it doesn't like long font stack trace in the link attribute.
<!--[if lte IE 8]>
<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Tangerine" />
<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Open+Sans" />
<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Droid+Sans" />
<![endif]-->
Related Topics
Concatenate Values in Less (Css) Without a Space
CSS Fixed Position with Auto Margin
How to Style an Anchor Tag to Look Like a Button with the Same Height as the Button
Why Do I Have to Put Media Queries at the Bottom of the Stylesheet
CSS Display: Inline-Block Does Not Accept Margin-Top
How to Keep Aspect Ratio of a Background-Image
How to Use Font-Weight with Font-Face Fonts
Handling CSS Id and Classes with Spaces
Can You Add Line Breaks to the :After Pseudo Element
Customize List Item Bullets Using CSS
Flexbox Misbehaving with Max-Height
IE7 CSS Inheritance Does Not Work
How to Override Z-Index Inheritance from Parent Element