rem、em、px、pt及网站字体大小设配


  • rem:相对的只是HTML根元素字体尺寸;
  • em:相对于当前对象内文本的字体尺寸(值不是固定且继承父级元素的字体大小);
  • px像素(Pixel):对于显示器屏幕分辨率而言的;
  • pt:point,是印刷行业常用单位,等于1/72英寸100%=100pt。
  • %:类似em。

使用 rem 实现 适配各种屏幕布局

方法一:用JS来动态的设置html的font-size:

(function (doc, win) {
/*初始化 默认宽度、字体、最小最大比例*/
    var init_w = 640,
    init_fs = 10,
    max_scale = 1,
    min_scale = 0.5;
    var docEl = doc.documentElement,
    resizeEvt = ‘orientationchange‘ in window ? ‘orientationchange‘ : ‘resize‘,
    recalc = function () {
        var clientWidth = docEl.clientWidth;
        if (!clientWidth) return;
        var percentage = clientWidth / init_w;
        percentage = percentage > max_scale?max_scale: percentage <min_scale?min_scale: percentage ;

        docEl.style.fontSize = init_fs * percentage + ‘px‘;
    };
    if (!doc.addEventListener) return;
    win.addEventListener(resizeEvt, recalc, false);
    doc.addEventListener(‘DOMContentLoaded‘, recalc, false);
})(document, window);

另外一种利用css3中的 媒体查询来根据不同的屏幕大小来写定html的font-size:

html {font-size : 10px;}

@media only screen and (min- 401px){
html {font-size: 6px !important;}
}

@media only screen and (min- 428px){
html {font-size: 6.5px !important;}
}

@media only screen and (min- 481px){
html {font-size: 7.25px !important; }
}

@media only screen and (min- 569px){
html {font-size: 8.625px !important; }
}

@media only screen and (min- 641px){
html {font-size: 10px !important; }
}

注意:

谷歌下css设置字体最小为12px,所以HTML根元素font-size字体尺寸基数尽量大:25px 40px 50px 75px 100px

<style>

p{font-size:10px;-webkit-transform:scale(0.8);}
/*这里的数字0.8,... 0.1是缩放比例,可以根据情况变化。*/

</style>

<p>字体10px</p>

px rem em 在线换算工具


纯属个人观点,仅供参考!

原文地址:https://www.cnblogs.com/yancongyang/p/6198026.html