Note: the discussion below applies to work in progress that might show up in Firefox 3.7. It does not describe features in Firefox 3.6.
This post is from Jonathan Kew and John Daggett. He’s supplied a 5 minute video that shows some of the features on the fly. If you’re a total font nerd and you enjoy a soothing British accent, you might want to watch it.
Using @font-face allows web designers a wide palette of font choices and with commercial font vendors supporting the WOFF font format, the set of font choices should improve even more. So the next step is clearly to try and make better use of features available in these fonts.
For many years, “smart” font formats such as OpenType and AAT have provided font designers ways of including a rich set of variations in their fonts, from ligatures and swashes to small caps and tabular figures. The OpenType specification describes these features, identifying each with a unique feature tag. But these have typically only been available to those using professional publishing applications such as Adobe InDesign. Firefox currently renders using font defaults; it would be much more interesting to provide web authors with a way of controlling these font features via CSS.
Håkon Wium Lie of Opera, based on discussions with Tal Leming and Adam Twardoch, proposed extending the CSS ‘font-variant’ property to include values for font features. Mozilla is actively working on a new proposal along these lines. This is a fairly big addition to CSS, so it will most likely involve some complex discussions about how best to support these features.
Experimental Implementation
As part of this effort, Jonathan Kew has been working on porting a portion of the Pango library for use with handling complex scripts and to enable the use of font features on all supported platforms. He currently has an experimental build that uses a special CSS property to associate a list of OpenType features with specific elements in a page. This is not the proposed format, it simply provides a better way of discussing possible sets of font-variant properties and the OpenType feature settings to which they should map.
.altstyles { /* format: feature-tag=[0,1] with 0 to disable, 1 to enable */ -moz-font-feature-opentype: "dlig=1,ss01=1"; }
The feature setting string above implies rendering with discretionary ligatures (dlig) and the first set of stylistic alternates (ss01). An example using Jack Usine’s MEgalopolis Extra:
This font makes extensive use of OpenType features; the homepage of the font contains a sample rendering that uses many of these features. Below is a rendering of the same sample written in HTML with OpenType features enabled:
Tabular Figures for Numerical Alignment
OpenType features also enable better control over alignment. When numbers are listed in tabular form, proportional forms often result in the misalignment of digits across rows, making the list harder to scan. With tabular alignment enabled, individual digits are rendered using a fixed width so that digits align across rows:
Automatic Fractions
Automatic fractions are also possible with OpenType features, note the inline use of fractional forms in the recipe ingredient list below:
Language Sensitivity
OpenType also includes support for features on a per-language basis. This is important for rendering text correctly in some languages. For example, Turkish uses both a dotted-i and a dotless-i, so the distinction needs to be preserved when rendering ligatures or small caps. Below is the same text in English and Turkish, with both default and language-sensitive renderings shown for the Turkish text:
Historical Text
The way text is rendered constantly evolves; glyphs once in common use often morph into other forms, making the historical forms distinct from their modern forms. Below is the text of an old Massachusetts Bay Colony law, taken from a book in the Daniel R. Coquillette Rare Book Room of the Boston College Law Library.
Original scanned image:
Below is the same text rendered in HTML using the Fell Types revival fonts by Igino Marini with OpenType features enabled. Note the ‘ct’ ligature and the contextual form of the ‘s’:
More resources
Font feature support in CSS proposal
OpenType font feature list
Fell Types revival fonts by Igino Marini







Pingback from font_dragr: a drag and drop preview tool for fonts at hacks.mozilla.org on October 21st, 2009 at 10:01 am:
Pingback from Dunwich Type Founders » Blog Archive » Lots of font love from Firefox! on October 21st, 2009 at 10:20 am:
Pingback from Jonas Dees » Blog Archive » New Font Control on October 21st, 2009 at 9:24 pm:
Pingback from LS graphic design » Miscellanea // Week mix on October 22nd, 2009 at 2:53 am:
Pingback from » Foxy fonts of the future My Green Life on October 22nd, 2009 at 8:41 am:
Pingback from Weekly Round-up ~ Oct 23, 09 Edition | ClearType Press - Building a Better Government Web on October 23rd, 2009 at 8:44 pm:
Pingback from Sex, lies, & type | i love typography, the typography and fonts blog on October 24th, 2009 at 1:25 pm:
Pingback from Davros reveals future: FireFox font control « The Pimpformation Architect on October 24th, 2009 at 4:46 pm:
Pingback from Notional Slurry » links for 2009-10-24 on October 24th, 2009 at 11:01 pm:
Pingback from Barker Design | Graphic & Web Development » Blog Archive » Sex, lies, & type on October 25th, 2009 at 12:49 pm:
Pingback from Sex, lies, & type | More On Design on October 25th, 2009 at 3:22 pm:
Pingback from Sex, lies, & type - WEMAKECHANGES on October 26th, 2009 at 12:04 pm:
Pingback from Three Advances In Screen Typography on October 27th, 2009 at 10:27 am:
Pingback from @font-face kullanımı / Fatih Hayrioğlu'nun not defteri on October 29th, 2009 at 10:18 am:
Pingback from 谋智社区 » Blog Archives » 火狐五周岁──记录互联网变化的五年 on November 9th, 2009 at 4:32 am:
Pingback from Sex, lies, & type | i love typography, the typography and fonts blog on November 13th, 2009 at 10:22 am:
Pingback from Print Design to Web Design: Comparative Analogies Ajax Help W3C Tag on November 14th, 2009 at 6:13 am:
Pingback from jjgod / blog - 闲聊文本渲染技术的近期发展 on November 17th, 2009 at 10:48 pm:
Pingback from IE9 will have rounded corners (and a bunch of other stuff) | The Accidental Businessman on November 19th, 2009 at 6:45 am:
Pingback from Print Design to Web Design: Comparative Analogies | E Marketing, Web Design, Web Develop, SEO and SEM Egypt Blog on November 19th, 2009 at 8:54 am:
Pingback from Rex's blah blah blah » Firefox 3.6 的開放網頁字型格式 on December 1st, 2009 at 3:19 am:
Pingback from The history of Web fonts – Centation Blog on December 8th, 2009 at 5:29 am:
Pingback from 5 years of Firefox ✩ hacks.mozilla.org on December 28th, 2009 at 7:16 pm:
Pingback from Mike Beltzner comments on next Firefox, Lorentz - Mozilla Links on January 15th, 2010 at 11:10 pm:
Pingback from Kommande IT-standarder « śaivaśākta on January 21st, 2010 at 2:19 pm: