今天,群里有人问道font-size<12 chrome不支持的问题。说实话,这个我一直都没留意过,正好借个机会给本身补习一下。css
本身亲自试过,确实如此,当font-size<12 chrome都当12px处理了,听说之前有个属性能够用,不过已经淘汰不支持了,也没法验证,那这里就不说了。这里用的方法是用css3的新属性:transform:scale();来达到对文本进行缩放,可是注意,他会对作用的元素进行总体缩放,而这不是咱们所但愿的,由于咱们只是想单独缩放字体,因此采起一些措施:就是用一个标签把须要缩放的文本包起来,而后单独对他添加transform:scale();避免对其余元素影响。好了,说了这么多,看代码:html
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>JS Bin</title> 6 </head> 7 <body> 8 <div style="font-size:16px">Font Size 16px</div> 9 <div style="font-size:15px">Font Size 15px</div> 10 <div style="font-size:14px">Font Size 14px</div> 11 <div style="font-size:13px">Font Size 13px</div> 12 <div style="font-size:12px">Font Size 12px</div> 13 <div style="font-size:11px" class="small">Font Size 11px</div> 14 <div style="font-size:10px;border:1px solid red;" class="">Font Size 10px</div> 15 <div style="font-size:9px" class="small">Font Size 9px</div> 16 <div style="font-size:8px;border:1px solid green;"><span class="small2">Font Size 8px</span></div> 17 <div style="font-size:7px;border:1px solid blue;"><span class="small">Font Size 7px</span><a href="#">baidu.com</a></div> 18 <div style="font-size:6px;border:1px solid blue;"><p class="small">Font Size 6px</p></div> 19 </body> 20 </html>
这是样式:css3
1 .small,.small2{-webkit-transform:scale(0.8);margin:0;padding:0;border:1px solid red;} 2 span.small{display:inline-block;}
这是结果:web
由上面结果能够看出,当给整个div添加small类的时候,红框的区域相比font-size:10px的红框是有缩小的,这说明整个div全部样式尺寸都缩小的0.8,而不仅仅是font-sizechrome
再看font-size:8px貌似不起做用,没错,由于他用了small2的类名,而这个没有display:inline-block;因此得出结论,这里scale是失效的。理解起来也很容易,scale本就是对尺寸的元素进行缩放,而span是内联元素,没有尺寸,天然不起做用失效。为何用display:inline-block,我想找个就不须要多解释了。字体
固然,对比看font-size:6px能够看出,不是只有span能够用来包含须要缩放文本的标签,p标签也是能够的,这里就省去让他块化的一步了spa
参考:http://www.w3ci.com/front/xHTMLCSS/34.htmlcode