• 浏览器默认改变字体大小解决方案


    前言

      遇到个小坑,踩了一个多小时,真鸡儿难受。

      是这样的,在移动端字体大小设置了16px,结果到 iphone5 上显示的有大有小,很奇怪。开始的时候还以为是P标签的原因,查了半天文档...最后才发现是浏览器的默认行为。

    正文

      在CSS中有  text-size-adjust  这样一个属性,这个属性允许我们控制将文本溢出算法应用到一些手机设备上。这个属性还没有写进标准,使用时必须加上前缀。如下:

            -webkit-text-size-adjust: ;  
            text-size-adjust: ;  
            -moz-text-size-adjust: ;  

      因为缩放适配小屏幕而导致文字会变得很小,许多手机浏览器会使用文本溢出算法让文本变大而更易读。当一个包含文本的元素宽度用了100%,他的文本大小会增加直到达到一个易读的大小,但是不会修改布局。 text-size-adjust   这个属性允许开发者去除或者修改这个浏览器默认行为,因为当网页设计已经处理小屏幕的宽度问题时不需要他。

      语法如下:

    /* 文本不会放大 */
    text-size-adjust: none;
    
    /* 文本可能会被放大 */
    text-size-adjust: auto;
    
    /* 文本会被放大80% */
    text-size-adjust: 80%;
    
    /* 全局的值 */
    text-size-adjust: inherit;
    text-size-adjust: initial;
    text-size-adjust: unset;

     text-size-adjust   属性的值为 auto , none , 百分比。

      - none

       禁用浏览器的文本溢出算法。在老的基于webkit内核的桌面端浏览器,这将阻止用户将网页放大或缩小。

      -    auto

       启用 浏览器的文本溢出算法。该值用于取消先前使用CSS设置的none。

      - <percentage>

       启用 浏览器的文本溢出算法,具体用一个百分数来确定文本放大范围。 

    我的解决办法:

       body   {  
            text-size-adjust: 100% !important;  
            -webkit-text-size-adjust: 100% !important;  
            -moz-text-size-adjust: 100% !important;  
        } 
      //必须加上对应的前缀

    需要注意的是这个属性并未写进标准,使用时 必须添加上对应的前缀,然后  这个属性只有在一些智能手机和平板电脑上使用,当然,这种情况多出在小屏幕的手机上,桌面浏览器和一些平板电脑浏览器并没有一些溢出算法。 

    更详细的内容请参考 MDN 文档。

      

  • 相关阅读:
    设计模式- 结构型模式,装饰器模式(5)
    设计模式- 结构型模式,装饰器模式(5)
    jar/war/ear包的区别
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
  • 原文地址:https://www.cnblogs.com/bfc0517/p/8358948.html
Copyright © 2020-2023  润新知