Safari snaps fonts to whole pixel sizes

Ouverte
#1 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
4/5
Temps estimé
3-5 jours
Accessibilité débutants
25/100
Type d'issue
Bug
Clarté
À clarifier
Activité
À l'abandon
Stack technique
javascript, react
Domaine
frontend

Piste de recherche

Commencez par reproduire le comportement de Safari décrit pour TightenText, y compris l’exemple avec 15.49px et minFontSize. Comparez les approches listées —disclaimer, éviter la limite d’un demi-pixel ou mise à l’échelle basée sur transform—, mais l’issue n’en choisit aucune et ne définit aucun critère d’acceptation ; l’état final attendu doit donc être clarifié par un maintainer.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

good first issue

Unfortunately for TightenText, Safari rounds font sizes to whole pixels as soon as it crosses the half-pixel boundary. This leads to a significant jump in how wide the text is, and also potentially means the resulting text is smaller than the developer's desired minFontSize (if, say, they want it to be 0.97 ems, and that results in a font size of 15.49px, Safari will render 15px text).

Some options:

  1. Add a disclaimer for Safari.
  2. Detect pixel rounding, refuse to cross the half pixel boundary if using such a browser.
  3. Scale the font some other way (e.g. transform) that would achieve the same visual effect as the font-size change?
Langage dominant
JavaScript
Étoiles
80
Forks
1
Métriques de merge des PR
Aucune PR mergée en 30 j

Préparer son environnement

Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Issues similaires

Plus d'issues JavaScript

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.