Comment utiliser la nouvelle police San Francisco d'Apple sur une page Web


114

Je souhaite utiliser la nouvelle police San Francisco sur un site. J'ai essayé:

font: 'San Francisco', Helvetica, Arial, san-serif;

en vain. J'ai essayé les réponses à cette question , mais ce @font-facen'est pas la solution ici.


1
Les polices du site Web dépendent de ce qui est installé dans le système de l'utilisateur ou sont chargées en externe. C'est assez simple, surtout si la police est mise à disposition.
Sparky

Réponses:


210

La nouvelle police système d'Apple n'est pas exposée publiquement. Apple a commencé à extraire les noms de polices système:

La motivation de cette abstraction est que le système d'exploitation puisse faire de meilleurs choix sur la face à utiliser à un poids donné. Apple travaille également sur les fonctionnalités de police, telles que les glyphes sélectionnables «6» et «9» ou les nombres non espacés. Je suppose qu'ils aimeraient également intégrer ces fonctionnalités sur le Web.

Safari et Firefox utilisent SF pour -apple-system; Chrome reconnaît BlinkMacSystemFont:

body {
    font-family: -apple-system, BlinkMacSystemFont, sans-serif;
}

Il existe également d'autres variantes:

font-family: -apple-system-body
font-family: -apple-system-headline
font-family: -apple-system-subheadline
font-family: -apple-system-caption1
font-family: -apple-system-caption2
font-family: -apple-system-footnote
font-family: -apple-system-short-body
font-family: -apple-system-short-headline
font-family: -apple-system-short-subheadline
font-family: -apple-system-short-caption1
font-family: -apple-system-short-footnote
font-family: -apple-system-tall-body

Vous pouvez en faire la démonstration au violon suivant; la plupart ne sont pas encore pris en charge: http://jsfiddle.net/v94gw9nx/

J'ai obtenu mes informations de l'article de Craig Hockenberry qui contient beaucoup d'informations intéressantes sur l'utilisation de la police: http://furbo.org/2015/07/09/i-left-my-system-fonts-in-san-francisco/

En outre, quelques informations intéressantes sur le blog Safari de Surfin sur l'utilisation des polices système abstraites: https://www.webkit.org/blog/3709/using-the-system-font-in-web-content/

Et apparemment, Apple travaille avec le W3C pour normaliser en utilisant un nom de police générique «système» en CSS. https://lists.w3.org/Archives/Public/www-style/2015Jul/0169.html

Téléchargez les fichiers .otf de la police SF pour votre usage personnel: https://developer.apple.com/fonts/


ou vous pouvez simplement utiliser des noms de polices commeSanFranciscoText-Regular

4
Si vous avez besoin de nombres à espacement fixe pour l'affichage dans le tableau, le -apple-systemprend également en charge cela via CSS font-variant-numeric: tabular-nums;.
Palimondo

@ j08691, quelle est la licence?
Pacerier

1
@BryanBryce C'était un hack pour El Cap. Cela ne fonctionne plus, je pense que c'est appelé .SF NS Textet .SF NS Displaymaintenant, mais vous ne devriez pas les utiliser. J'utiliserais -apple-system. SF Text/ SF Profonctionne uniquement si la police est installée manuellement.

1
Apparemment, -system-uic'est la nouvelle méthode standard sur Chrome et Safari. (Je ne voulais pas voler le crédit de votre réponse géniale, alors je mets simplement ceci dans les commentaires. Furbo.org/2018/03/28/system-fonts-in-css )
Wil Shipley

65

Aucune des réponses actuelles, y compris celle acceptée , n'utilisera la police San Francisco d'Apple sur les systèmes qui ne l'ont pas installée comme police système. Étant donné que la question n'est pas «comment utiliser la police système OS X sur une page Web», la bonne solution consiste à utiliser des polices Web:

@font-face {
  font-family: "San Francisco";
  font-weight: 400;
  src: url("https://applesocial.s3.amazonaws.com/assets/styles/fonts/sanfrancisco/sanfranciscodisplay-regular-webfont.woff");
}

La source


3
Si quelqu'un en voulait un audacieux: sanfranciscodisplay-bold-webfont.woff
Snow Bases

11
Remarque: cette réponse enfreint les termes de la licence de police d'Apple , qui stipulent que "[...] vous pouvez utiliser la police Apple uniquement pour créer des maquettes d'interfaces utilisateur à utiliser dans des produits logiciels exécutés sur iOS, iPadOS, macOS ou tvOS d'Apple systèmes d'exploitation, selon le cas " .
Teh

36

Dernière fois testé: mars 2018


Pour répondre à la question

Comment utiliser la nouvelle police San Francisco d'Apple sur une page Web

font-family: -apple-system, system-ui, BlinkMacSystemFont;

ou (encore plus court):

font-family: -apple-system, BlinkMacSystemFont;

devrait suffire.

Si vous souhaitez utiliser par défaut la police système sur plusieurs plates-formes, je vous suggère:

font-family: -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, Ubuntu;
  • -apple-system- San Francisco dans Safari (sur Mac OS X et iOS); Neue Helvetica et Lucida Grande sur les anciennes versions de Mac OS X.
  • system-ui - police d'interface utilisateur par défaut sur une plate-forme donnée.
  • BlinkMacSystemFont- équivalent de -apple-system, pour Chrome sur Mac OS X.
  • "Segoe UI" - Windows (Vista +) et Windows Phone.
  • Roboto - Android (Ice Cream Sandwich (4.0) +) et Chrome OS.
  • Ubuntu - toutes les versions d'Ubuntu.

L'idée est empruntée au numéro suivant sur github .

Vous pouvez rechercher des polices pour d'autres systèmes d'exploitation ou des versions plus anciennes de celles-ci dans cet article sur les astuces css .


Êtes-vous sûr que c'est effectivement San Francisco qui est utilisé pour le rendu sur iOS? Sur iOS 12 (Simulator) ne lui ressemble pas; sur iOS 13, cela y ressemble, mais tous les glyphes ne sont pas disponibles .
Fabien Snauwaert le

@FabienSnauwaert, non je ne suis pas sûr d'iOS 12 et 13. C'est pourquoi j'ai ajouté la date en haut de la réponse (c'est-à-dire que la réponse a plus de 2 ans maintenant, et a été publiée avant même l'annonce d'iOS 12).

26

-apple-system vous permet de choisir San Francisco dans Safari. BlinkMacSystemFont est l'alternative correspondante pour Chrome.

font-family: -apple-system, BlinkMacSystemFont, sans-serif;

Roboto ou Helvetica Neue pourraient être insérés comme solutions de secours avant même le sans-serif.

https://www.smashingmagazine.com/2015/11/using-system-ui-fonts-practical-guide/#details-of-approach-a (comment ou précédemment http://furbo.org/2015/07/ 09 / i-left-my-system-fonts-in-san-francisco / faites un excellent travail en expliquant les détails.


10

Si l'utilisateur exécute El Capitan ou une version ultérieure, il fonctionnera dans Chrome avec

font-family: 'BlinkMacSystemFont';

3
Avez-vous un lien vers une documentation officielle (ou autre) à ce sujet?
Moshe Katz

4

Apple fait abstraction des polices système à l'avenir. Cette installation utilise le nouveau nom de famille générique -apple-system. Donc, quelque chose comme ci-dessous devrait vous donner ce que vous voulez.

body 
{
  font-family: -apple-system, "Helvetica Neue", "Lucida Grande";
}

Qu'en est-il du canevas HTML?
clearlight le

4

Ceci est une mise à jour de cette question plutôt ancienne. Je voulais utiliser les nouvelles polices SF Pro sur un site Web et je n'ai trouvé aucune police CDN, à part ce qui précède (applesocial.s3.amazonaws.com).

De toute évidence, ce n'est pas un référentiel de contenu officiel approuvé par Apple. En fait, je n'ai trouvé AUCUN référentiel de polices officiel servant des polices Apple, prêt à être utilisé par les développeurs Web.

Et il y a une raison - si vous lisez le contrat de licence qui accompagne le téléchargement de la nouvelle SF Pro et d'autres polices à partir de https://developer.apple.com/fonts/ - il indique très clairement dans les premiers paragraphes:

[...] vous pouvez utiliser la police Apple uniquement pour créer des maquettes d'interfaces utilisateur à utiliser dans des produits logiciels fonctionnant sur les systèmes d'exploitation Apple iOS, macOS ou tvOS, selon le cas. Le droit qui précède comprend le droit d'afficher la police Apple dans des captures d'écran, des images, des maquettes ou d'autres représentations, numériques et / ou imprimées, de tels produits logiciels fonctionnant uniquement sur iOS, macOS ou tvOS. [...]

Et:

Sauf disposition expresse des présentes, vous ne pouvez pas utiliser la police Apple pour créer, développer, afficher ou distribuer de quelque manière que ce soit de la documentation, des illustrations, du contenu de site Web ou tout autre produit de travail.

Plus loin:

Sauf autorisation expresse contraire [...] (i) un seul utilisateur peut utiliser la police Apple à la fois, et (ii) vous ne pouvez pas rendre la police Apple disponible sur un réseau où elle pourrait être exécutée ou utilisée par plusieurs ordinateurs en même temps.

Plus de questions pour moi. Apple ne souhaite clairement pas que ses polices soient partagées sur le Web en dehors de ses produits.


3
Dans la réponse acceptée, vous pouvez voir que nous ne servons pas les polices Web Apple, nous disons au navigateur d'utiliser la police système Apple, qui est actuellement SF. Vous ne pouvez certainement pas servir SFPro, mais vous pouvez spécifier qu'il soit utilisé pour les personnes possédant des appareils Apple.
inorganik

4

Vous ne pouvez pas utiliser la police système Apple servie directement à partir d'une base de données. C'est contre la licence, mais vous pouvez l'utiliser pour les systèmes Mac supérieurs à High Sierra

body 
{
  font-family: -apple-system, "Helvetica Neue", "Lucida Grande";
}

Ou vous pouvez utiliser ceci:

font-family: 'BlinkMacSystemFont';

2

Dernier test en 2015

Devrait utiliser cette solution comme dernier choix, lorsque d'autres solutions ne fonctionnent pas.


Réponse originale:

Travailler sur macOS Chrome / Safari

body { font-family: '.SFNSDisplay-Regular', sans-serif; }

1
Un bloc de code seul ne fournit pas une bonne réponse. Veuillez ajouter des explications.
Louis Barranqueiro

1
C'est le seul qui a fonctionné pour moi sur une feuille de style de syntaxe Atom.
Kai

2
Notez que cela ne fonctionne pas sous iOS alors qu'il -apple-system, 'BlinkMacSystemFont'fonctionne dans iOS Chrome + Safari et OS X Chrome + Safari.
Charlie Schliesser

1
De plus, je dois souligner que la raison pour laquelle cela ne fonctionne pas sur iOS est que les polices système commencent par .SFNS sur macOS alors qu'elles commencent par .SFUI sur iOS. Si vous devez absolument faire cela pour une raison quelconque, cela réglerait le problème… mais ne le faites pas!
Jonathan Thornton

1
merci, je l'ai appliqué à la police SF et fonctionne très bien. Le problème avec -apple-system est appliqué dans tout le contenu et remplace le style de font-family.
Hardik Darji
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.