Use the native system font of the OS running the browser
Switch branches/tags
Nothing to show
Clone or download
docwhat and jonathantneal Update
Updated Can I Use link
Latest commit 7398483 Jul 11, 2018
Failed to load latest commit information.
.gitignore Use cross-platform cpr for npm install hook (#8) Jul 23, 2017 Bumps to 2.0, adds contributor Jun 28, 2017 1.0.0 Jul 30, 2015 Update Aug 21, 2018
index.html Update index.html Sep 25, 2017
package.json Fixes #14 Mar 29, 2018
system-font.css Fixes #14 Mar 29, 2018

System Font CSS

System Font CSS is set of @font-face rules that let you use the native system font of the OS running the browser.

body {
    font-family: system-ui;

system-font.css offers eight variations of the system-ui font family; light (300) light italic, normal (400), normal italic, medium (500), medium italic, bold (700), and bold italic.

blockquote {
    font: italic 300 system-ui;

p {
    font: 400 system-ui;

Quick Start


This package can be installed with:

  • npm: npm install --save system-font-css


When installed with npm, system-font.css will create both a SCSS and LESS partial for easy importing:

@import 'system-font';


OSX has used three system typefaces. Since El Capitan it has used San Fransisco. In Yosemite it used Helvetica Neue. From Mavericks back to Kodiak it used Lucida Grande.


Windows has used four system typefaces. Since Vista it has used Segoe UI. In XP, it used Tahoma, which oddly enough does not have an italic variation. From Windows ME back to Windows 3.1 it used Microsoft Sans Serif. Finally, from Windows 2.0 back to Windows 1.0 it used Fixedsys. Neither Microsoft Sans Serif or Fixedsys are included in this set, with apologies.

Also, for those of opposed to joy, remember that Internet Explorer 8 does not support local @font-face rules. Therefore, should you need to reference system fonts in that browser then you will need to do so from the font declaration.

body {
    font-family: system-ui, "Segoe UI", Tahoma;


Android has used two system typefaces. Since Ice Cream Sandwich it has used Roboto. From Jelly Bean back to Cupcake it used Droid Sans, which also lacks an italic variation. Do you suppose OS developers dislike emphasis?


Ubuntu has always used one system typeface, aptly named Ubuntu. That part was easy.

Native system-ui resources