探究为何rem在chrome浏览器上计算出错_html/css_WEB-ITnose
最近在一个项目中,测试同学提了一个bug,说手机上有个页面的某些字体显示偏大。就像这样
我用chrome浏览器在pc上测试了一下,发现pc上也有这个问题,但是用其它浏览器打开这个页面就没有发现这个问题。
于是,上网百度了一下,发现原来是chrome浏览器的问题。
通过各种百度Google然后我总结了一下这个问题产生的原因:
chrome浏览器目前支持的最小的字体大小为12px,而我在html根元素上设置font-size:62.5%,计算之后就是10px,1rem=10px。
由于我页面字体大小都是按照10px的基数去算的,所以当chrome浏览器计算字体大小时就出现了出错。
解决方案:
又经过一番百度Google之后,总结了一下这种问题的解决方法。
网上提供的两种最多的解决方案就是
1、js方法
<script type="text/javascript">document.body.style.fontSize = '1.6rem';</script>
具体的字号根据你的项目来决定
2、css方法
<style>body {font-size: 1.6rem;}</style>
将这个样式插入到head标签里面
这两种方式我都试用了,但是并没有效果,我也不清楚是怎么回事,如果有大神知道,还望不吝赐教。
所以,目前我认为最根本的解决方法就是,将html根元素的font-size大小设置为大于等于12px。
一些疑惑:
1、当1rem小于12px时,chrome是怎么计算的。
如上图所示,我的html根元素的font-size设置为62.5%(10px),图中字体计算的时候并不是25px,而是28.5941px,这个数是怎么来的,如果按照最小12px来算应该是30px才对啊。
2、为啥有的字体计算正确,有的出错。
如上图所示,同样设置为2.5rem的字体,有的能正确计算出是25px,有的却不行,这是怎么回事呢?
希望了解其中缘由的人能不吝赐教。

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

L'article traite du HTML & lt; Progress & GT; élément, son but, son style et ses différences par rapport au & lt; mètre & gt; élément. L'objectif principal est de l'utiliser & lt; Progress & gt; pour l'achèvement des tâches et & lt; mètre & gt; pour stati

L'article traite du HTML & lt; Datalist & GT; élément, qui améliore les formulaires en fournissant des suggestions de saisie semi-automatique, en améliorant l'expérience utilisateur et en réduisant les erreurs. COMMANDE COMPRES: 159

L'article traite du HTML & lt; mètre & gt; élément, utilisé pour afficher des valeurs scalaires ou fractionnaires dans une plage, et ses applications courantes dans le développement Web. Il différencie & lt; mètre & gt; De & lt; Progress & gt; et ex

L'article examine les meilleures pratiques pour assurer la compatibilité des navigateurs de HTML5, en se concentrant sur la détection des fonctionnalités, l'amélioration progressive et les méthodes de test.

L'article discute de l'utilisation des attributs de validation de formulaire HTML5 comme les limites requises, motifs, min, max et longueurs pour valider la saisie de l'utilisateur directement dans le navigateur.

L'article traite de la balise Meta de la fenêtre, essentielle pour la conception Web réactive sur les appareils mobiles. Il explique comment une utilisation appropriée garantit une mise à l'échelle optimale du contenu et une interaction utilisateur, tandis que la mauvaise utilisation peut entraîner des problèmes de conception et d'accessibilité.

Cet article explique le html5 & lt; time & gt; élément de représentation sémantique de date / heure. Il souligne l'importance de l'attribut DateTime pour la lisibilité à la machine (format ISO 8601) à côté du texte lisible par l'homme, stimulant AccessIbilit

L'article traite du & lt; iframe & gt; L'objectif de Tag dans l'intégration du contenu externe dans les pages Web, ses utilisations courantes, ses risques de sécurité et ses alternatives telles que les balises d'objet et les API.
