1. 程式人生 > >Chrome不支持css字體小於12px的解決辦法

Chrome不支持css字體小於12px的解決辦法

ner ges none 變化 pac zh-cn 利用 pack block

我們先來看個效果圖(chrome下):


技術分享圖片

從上面的圖可以很明顯地看出Chrome下css設置字體大小為12px及以下時,顯示的都是一樣大小,都是默認12px;

那麽網上有一個方法就是給當前樣式添加Chrome私有屬性:-webkit-text-size-adjust:none;
可是我進行驗證後發現並無效果。後來查資料了解到在Chrome 27之後就取消了對這個屬性的支持,那麽我們應該如何設置Chrome下的字體呢?

可以利用css3的縮放屬性:transform:scale()

.small-font{
  font-size: 12px;
  -webkit-transform: scale(0.5);
}

這樣在元素上加上這個屬性就OK了,但是只這樣寫可不會兼容IE、FF哦,所以再給一個兼容性寫法:

.small-font{
  font-size: 12px;
  -webkit-transform: scale(0.5);
}
.smallsize-font{
  Font-size: 6px;
}

<p class=“small-font samllsize-font”>溫馨提示</p>

這時候有同學說你這不對啊,我加了這樣式就沒效果,別急哈,仔細看下你的元素是不是行內元素啊?
註意:transform:scale()這個屬性只可以縮放可以定義寬高的元素,而行內元素是沒有寬高的,我們可以加上一個display:inline-block;

屬性就好啦。

PS:有小夥伴讓用rem解決,我在這裏解釋一下哈,em、rem是一種相對單位,根據根元素的大小計算出來,目的是瀏覽器的字體大小變化時,頁面布局及字體大小能跟著自適應。也就是說反應到瀏覽器要渲染是還是xx px,那Chrome瀏覽器本身是渲染不了12px以下的字體的,所以這個方法是不可行的,rem雖好,但不對這個癥。

Chrome不支持css字體小於12px的解決辦法