Page MenuHomePhabricator

IE6 requires obscene workarounds for expanded fontsets.
Closed, InvalidPublic

Description

Author: grendelkhan

Description:
The discussion on [[en:Talk:Greek language]] centers around requiring custom
font loading for the display of polytonic Greek or IPA. The custom FONT tags are
being replaced by a template ([[en:Template:IPA]]) that includes a SPAN tag with
a list of fonts. This is still really, really ugly to do, but otherwise the
fonts won't display without IE users manually selecting Arial Unicode MS for
their display font.

Would it be possible to specify a preference for more Unicode-friendly fonts
than the default in IE, in the default CSS?

This is, I realize, modifying the stylesheet to fix problems with IE. But the
setup is already full of workarounds for problems with IE, isn't it?


Version: 1.4.x
Severity: normal
OS: Windows 2000
Platform: PC

Details

Reference
bz1281

Event Timeline

bzimport raised the priority of this task from to Low.Nov 21 2014, 8:09 PM
bzimport set Reference to bz1281.
bzimport added a subscriber: Unknown Object (MLST).

Sorry, but this report is pretty vague.

Can you give an example of the actual style code you might want?

grendelkhan wrote:

Whoops, didn't notice the reply.

[[en:Template:IPA fonts]] lists: Code2000, Gentium, Gentium Alternative, TITUS
Cyberbit Basic, Arial Unicode MS, Lucida Sans Unicode, Lucida Grande

So the currently used code in [[en:Template:IPA]] is:

font-family:Code2000, Gentium, Gentium Alternative, TITUS Cyberbit Basic, Arial
Unicode MS, Lucida Sans Unicode, Lucida Grande; font-family:inherit;

I don't know how Windows deals with missing glyphs, or what the preferred order
is or should be, but this is what's currently used.

The recommended way to do this is to use the lang attribute on elements like
span, div etc. This can be matched via CSS2 attribute selectors, making it
possible to adjust size, font family etc globally:

[att|=val]

Match when the element's "att" attribute value is a hyphen-separated list of

"words", beginning with "val". The match always starts at the beginning of the
attribute value. This is primarily intended to allow language subcode matches
(e.g., the "lang" attribute in HTML) as described in RFC 1766 ([RFC1766]).

So, in this case the rule would be (not sure about the canonical code for
polytonic greek):

div[lang=gr-polytonic],
span[lang=gr-polytonic] {

font-family: Code2000, Gentium, Gentium Alternative, TITUS Cyberbit Basic, Arial

Unicode MS, Lucida Sans Unicode, Lucida Grande;
}

This selector is not implemented correctly in older versions of IE, it's fairly
easy to add a feature to the parser that adds a class to all elements that have
a lang attribute during rendering. This class can be added to the rules above to
provide the same style automatically.

I think this is the best approach to standardize multi-language handling, if
there are no objections i'll go ahead and implement it.

Adding testme. Please test with Internet Explorer 8 and note the result here.

Which versions of IE it doesn't work? We only support back to IE 6. Also, improved Narayam extension will probably supersede this.

EN.WP.ST47 wrote:

The reporter has not been here in six years. We don't have any confirmation of what versions of IE it doesn't work on, it could work fine on all versions we support (6.0+). I don't think we'll be hearing anything more about this.