• 请不要在回答技术问题时复制粘贴 AI 生成的内容
GeekSky
V2EX  ›  程序员

前端能不能实现只更改数字的字体?

  •  
  •   GeekSky · May 25, 2020 · 5548 views
    This topic created in 2204 days ago, the information mentioned may be changed or developed.

    有个 wordpress 的主题,中文和英文字体我都喜欢,就是数字使用的字体太难看了,可以只更改数字的字体吗?

    Supplement 1  ·  May 25, 2020
    大佬们说的太高端了,我不会弄……
    算了,直接 body {font-family:"Microsoft YaHei";}吧……
    还有个问题想请教,就是 wordpress 页脚都有一行自豪的使用 wordpress,怎么使用额外 CSS 在下面再加一行写备案号呢?注意不是修改页脚文件,是使用额外 CSS 。
    16 replies    2020-05-25 17:19:52 +08:00
    luzemin
        1
    luzemin  
       May 25, 2020
    找个只有数字的字体,应用样式的时候写在第一位,那就只影响了数字。理论应该是这样。比如:font-family:NumberFonts,defaultFonts
    codehz
        2
    codehz  
       May 25, 2020
    (@font-face unicode-range 了解一下,可以根据 unicode 范围来决定使用某种字体
    https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/unicode-range
    murmur
        4
    murmur  
       May 25, 2020
    当然可以,反爬虫的必修课就是修改数字的字体
    geelaw
        5
    geelaw  
       May 25, 2020 via iPhone   ❤️ 1
    另外一提,unicode-range 的技巧常用于选择正确的标点字形,例如希望文本里的拉丁文本使用字体 A 、汉语文本使用字体 B 。
    由于汉语字体包括拉丁文本的,你需要设置字体为 A B,但这会导致引号、省略号使用拉丁文本字形。
    此时可以用 font-face + unicode-range 设置字体 C,它只包括引号、省略号,并使用字体 B 的字形。最后设置字体为 C A B 即可。
    lupkcd
        6
    lupkcd  
       May 25, 2020
    1L 方法可行
    darmau
        7
    darmau  
       May 25, 2020
    2 楼正解。

    如果没有那种只有数字的字体咋办?还得自己再拆开做个字体出来?
    a62527776a
        8
    a62527776a  
       May 25, 2020
    我以前用过 Fontmin 这个工具 可以把字体中你想要的部分拆出来
    a62527776a
        9
    a62527776a  
       May 25, 2020
    gitjavascript
        10
    gitjavascript  
       May 25, 2020
    可以啊,换个数字字体就好了啊
    uTOmOuk3L6sb4MSI
        11
    uTOmOuk3L6sb4MSI  
       May 25, 2020 via iPhone
    @darmau #7
    用字蛛,http://font-spider.org/
    可以利用压缩提取想要的字体
    uTOmOuk3L6sb4MSI
        12
    uTOmOuk3L6sb4MSI  
       May 25, 2020 via iPhone
    如果像楼上直接使用只用多套字体,体积不小,纯数字推荐自己压缩再使用
    sunziren
        13
    sunziren  
       May 25, 2020
    13 楼正解
    baobao1270
        14
    baobao1270  
       May 25, 2020
    第一个问题我说个比较 dirty 的解决方法:js 查找数字,然后替换为 <span class="number-font">数字</span>,在 number-font 类应用数字字体。好处非纯数字字体也可这样用,不用拆字体(拆字体也会引发法律问题),而且简单粗暴,不需要额外的学习成本。

    第二个问题,首先你要知道这样做并不对搜索引擎友好,如果工信部使用自动化脚本核查的话,也很有可能认为你没有标注备案号。如果你一定要这么做的话,可以用 CSS 的 ::after 伪类。
    red2dog
        15
    red2dog  
       May 25, 2020
    @font-face 可以指定使用字体的字符的。你搜一下就有了。我们 app 网页就是数字指定等宽的商业字体。字体文件是设计师给的。
    elevencloud
        16
    elevencloud  
       May 25, 2020
    用字蛛把数字 0-9 抽离一下吧
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3039 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 57ms · UTC 14:26 · PVG 22:26 · LAX 07:26 · JFK 10:26
    ♥ Do have faith in what you're doing.