Laissez-moi d'abord vous faire part de mes réflexions.
Parce que la densité physique de pixels de l'écran Retina est 2 fois supérieure à celle d'un écran ordinaire. En d’autres termes, le même écran Retina d’un pouce utilise deux pixels physiques pour le rendu, alors qu’un écran ordinaire n’en utilise qu’un. Jusqu'à présent, je pense que la taille physique des pixels de l'écran Retina est plus petite que la taille physique des pixels de l'écran ordinaire ! Sinon, si un écran rétine est numériquement équivalent à un écran ordinaire, la surface d'un écran rétine ne serait-elle pas 4 fois supérieure à celle d'un écran ordinaire ? Mais en réalité, un iPhone n’est pas plus gros qu’un téléphone mobile ordinaire. Donc
Je pense que les pixels physiques de l'écran Retina sont plus petits que les pixels physiques de l'écran ordinaire.
Puis la question se pose. Puisque c'est le cas, comment peut-il y avoir un problème de « bordure d'un pixel ? » Bien que l'écran Retina utilise deux pixels physiques pour représenter un pixel CSS, et que l'écran ordinaire utilise un pixel physique pour représenter un pixel CSS, la physique de l'écran rétine
La taille des pixels est la moitié de la taille normale. Ils devraient donc être égaux. Mais ce problème existe, ce qui signifie seulement que mon
idée est fausse. Mais je ne sais pas ce que je fais de mal. Pourriez-vous m'aider à clarifier les choses ?
Les pixels côté mobile ne sont pas égaux aux pixels de l'écran. Tout d'abord, cela est lié au rapport de mise à l'échelle. S'il est confirmé qu'il est de 1,0, CSS peut correspondre à document.body.clientHeight et document.body.clientWidth. .
Pour un écran de 1920 x 1200, document.body ne peut être que de 480 x 662.
Utilisez directement la mise en page rem. Avec ce grossissement, l'image sera-t-elle floue