众所周知,Google浏览器最小字体为12px,那如何实现更小的10px字体呢?在网页中,经常会有一些促销标签,设计师很喜欢把这些便签的颜色设计的很醒目而字体很小,当然我们不讨论这种设计在视觉上会产生什么效果,我们现在要讨论的是如何制作这种小字体。

字体大小限制在有些浏览器(Chrome)上需要做设置的,例如:Chrome默认最小字体大小为12px,小于12px的字体都显示12px大小,不过你可以设置最小到6px。当然对于普通的用户是不会对它进行设置的,所以需要一些技术手段来做这种小字体。下面是不同平台不同浏览器对字体大小的限制:

平台 浏览器 默认最小字体 最小字体限制
Mac Chrome 12px 6px
Mac Safari 0px no
Mac Firefox 0px no
Win Chrome 12px 6px
Win IE11 0px no
Win Edge 0px no
Win Firefox 0px no
Mobile Webkit 12px 12px

注:在Chrome浏览器中,虽然最小字体到6px,但是当它设置为0px时,文字会看不见。

方法一:切图解决
小于12px的字体,如果内容固定,可以将内容切除做图片,没有兼容问题

方法二:-webkit-transform:scale(0.8);c3的新属性,但是使用这个之后,如果该标签有背景图,那背景图也会被缩放,解决办法:给该标签里包裹一个span标签,设置样式display:block;

从上面的浏览器的表格中我们不难看出只有Chrome才有对字体的限制,Chrome是支持CSS3的,我们可以用缩放的方式来制作10px字体。需要一些计算: 10px = 12px * 0.83 或者 10px = 20px * 0.5 ;当然我们会优先采用第一个计算方式,因为避免不支持CSS3浏览器的情况,我们也可以通过降级处理,将字体变回12px;最后兼容 IE: *font-size:10px;