请输入关键字
2019-04 03

网站建设时网页字体大小限制的解决

css中字体大小在不同浏览器兼容性问题;

 

css中使用font-size设定字体大小,不同浏览器的字体height一样,但是width不同,比如在火狐和谷歌中,font-size20px,字体的高度变为20px,但是谷歌的字体宽度比火狐长

 

解决方法如下:

 

1、 将浏览器的基准字号设置为 62.5%,也就是 10px,现在 1rem = 10px —— 为了计算方便。然后 在 body上应用 font-size: 2rem;,那么现在body的字体大小就是 20px

 

html { font-size: 62.5%; }

body { font-size: 2rem; /* =20px */ }

 

 

2webkit浏览器渲染出来的字体具有一定的平滑效果,所以我们会看到 chrome 渲染出来的字体要大一点并且宽一点,可添加如下内容:

 

body {

 -webkit-font-smoothing: antialiased;

 -moz-osx-font-smoothing: grayscale;

}

 

启用浏览器的默认平滑字体效果css

 

body {

 -webkit-font-smoothing: subpixel-antialiased;

 -moz-osx-font-smoothing: auto;

}

 

设置Chrome下,设置小于12px字体,显示仍为12px

 

-webkit-text-size-adjust:none;

 

chrome浏览器最小字体大小限制的解决方案;

 

chrome有最小字体大小12px的限制,以前可以用-webkit-text-size-adjustnone来解决。但是chrome27以后就不支持了,而且很影响用户体验。我们可以巧用transform来显示小于12px的字体。代码如下:

 

    .font-6px{

      transform: scale(0.5);

      font-size: 12px;

    }

 

要显示6px的字体,就把字体大小为12px,然后用transform缩小到原来的50%。字体实际显示大小就是6px了。

 

Android浏览器下字体偏上的问题的解决;

 

Android浏览器下,使用以下几种方式进行字体垂直居中的时候都会导致字体偏上:

 

使用line-height 来使字体垂直居中

  

使用padding 来使字体垂直居中

 

本文主要说的是使用<html>标签的lang属性设置为zh-CN 来处理以上问题。

<html>标签的lang

 

<html>标签的lang 属性可用于网页或部分网页的语言。这对搜索引擎和浏览器是有帮助的。根据 W3C 推荐标准,您应该通过 <html>标签的lang 属性对每张页面中的主要语言进行声明。

 

如果未声明lang 属性,默认为en ,网页将会使用en 来进行文字渲染,但如果生命为zh-CN ,则会采用中文字体来进行渲染,就可以适当解决在Android浏览器下字体偏上的问题。