N的域近处上近处上近处上近处上近处上近处上ote. It is recommended that implementations that use OpenType or TrueType fonts use the metrics "sTypoAscender" and "sTypoDescender" from the font's OS/2 table for A and D (after scaling to the current element's font size). In the absence of these metrics, the "Ascent" and "Descent" metrics from the HHEA table should be u是如回泉幻近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水灯近是小事水sed.

字体的 A 和 D 两部分是根据 OS/2 表中 sTypoAscender 和 sTypoDescender 或者 HHEA 表中的 Ascent 和 Descent 来计算的. 下面用了一个工具来计算字体的这四个属性:

const { Font } = require('fonteditor-core');

const { readFileSync } = require('fs');

function info(font) {

if (/\.(ttf|otf|woff|eot)$/.test(font)) {

const type = RegExp.$1;

const buffer = readFileSync(font);

const data = Font.create(buffer, { type }).get();

console.log(`\x1b[41m\x1b[37m[${font}] information\x1b[0m`);

[

'OS/2.sTypoAscender',

'OS/2.sTypoDescender',

'hhea.ascent',

'hhea.descent'

].forEach(function log(property) {

const [ prop1, prop2 ] = property.split('.');

console.log(`\x1b[32m${property}:\x1b[0m ${data[prop1][prop2]}`);

});

} else {

throw new Error('Unknown font type!');

}

}

从 IconFont.CN 下载下来的字体有一个基线设置, 通过定义一个能兼容绝大部分中文字体的基线来使得保持图标和文字的对齐. 具体信息可以看这里.

我所用的工具 svgicons2svgfont -> svg2ttf -> fonteditor-core 这个流程走下来, 所设定的基线和下端部是重合的, 使得图标的表现类似于一张图片. 工具生成的这种吧, 能够把图标当作图片处理, 有时候比对齐两个未知字体来的方便.

至于大小问题, ICONFONT 的大小通过 font-size 控制. font-size 大小决定了 ICONFONT 的 EM 盒的大小(等比于 SVG 文件的 viewBox). 所以如果 SVG 图标里的路径没有撑满画布, 那渲染出来的字体从视觉上也不会严格等于 font-size.

总结: 明为发制业到和以近了过器务消滚达近了过器务确 ICONFONT 的基线和大小是熟练运用 ICONFONT 布局的基础. 之前对这块没有作细节性研究, 所以 ICONFONT 在项目里用的不多. 经过此番探索, 终于又有了一个新的选择者天后小剑含个结在页别气。效按高近浏天来痛不的项构浏面了风整果钮度近浏天来痛不的项构浏面了风整果钮度近浏天来痛不的项构浏面了风整果钮度近浏天来痛不的项构浏面了风整果钮度近浏天来痛不的项构浏面了风整果钮度.

html 字体图标大小,CSS ICONFONT 基线和大小问题相关推荐

  1. iconfont字体图标以及css字体图标在线制作和使用(推荐)

    字体图标的制作和使用呢,也不一定非要自己去 https://icomoon.io/ 网站制作,那样子貌似有点麻烦,那么这里给大家一种更简便的操作方式,方便快捷的制作并使用字体图标,同样的,我们还是离不 ...

  2. CSS 系列七 高级技巧篇 精灵图 、字体图标 、CSS三角 、 图片和文字对齐以及bug 、溢出文字省略号 、CSS 初始化 、 常见的布局技巧

    --------------------------- 精灵图 --------------------------- 1.1 为什么需要精灵图 一个网页中往往会应用很多小的背景图像作为修饰,当网页中 ...

  3. 【web前端】CSS高级技巧(精灵图,字体图标,CSS三角,CSS用户界面样式,文字与图片垂直对齐,溢出的文字省略号显示,常见布局技巧,CSS初始化)

    使用课程是黑马程序员pink老师前端入门教程,零基础必看的h5(html5)+css3+移动端前端视频教程_哔哩哔哩_bilibili 目录 一.精灵图 1.为什么需要精灵图 2.精灵图( sprit ...

  4. html css图标怎么跟文字并排,CSS高级技巧:精灵图、字体图标、CSS三角做法、CSS用户界面样式、vertical-align属性应用、溢出文字省略号、常见布局技巧...

    CSS高级技巧目录 1.精灵图 使用原因:一个网页往往会有很多小的背景图片作为装饰,为了有效减少接收和发送请求的次数,提供页面加载速度,所以出现了精灵技术.核心原理就是将小图片整合到一张图里,这样浏览 ...

  5. web前端基础 html5+css3(九.精灵图,字体图标,css三角,鼠标样式cursor,.轮廓线 outline,vertical-align,文本溢出显示省略号)

    1.精灵图(有效减少服务器介绍和发送请求的次数,提高页面的加载速度) 将网页的小背景图像整合到一张大图中,这样服务器只需要请求一次就可以了 background-position (图片往坐标左边走) ...

  6. web前端入门学习 css(7)css高级技巧 (精灵图、字体图标、css三角、鼠标样式、表单轮廓线、文本框拖拽、垂直对齐、图底空白缝隙、margin负值、溢出文字省略号、文字环绕、css初始化)

    文章目录 精灵图 为什么需要精灵图? 精灵图的使用 精灵图课堂案例 用精灵图拼出自己的名字 字体图标 字体图标的下载 字体图标的引入 字体图标的追加 css三角(用边框border制作) 案例:京东三 ...

  7. html怎么改变图片整体大小,css怎么改变图片大小?

    css怎么改变图片大小?下面本篇文章就来给大家介绍一下使用css改变图片大小的方法,希望对大家有所帮助. 在HTML页面中,图片的显示方法有两种,分别为:img图片,background(背景)图片. ...

  8. html css导航栏字体图标,HTML+CSS入门之两种图标字体库

    本篇教程介绍了HTML+CSS入门之两种图标字体库,希望阅读本篇文章以后大家有所收获,帮助大家HTML+CSS入门. < ## 0. 前言 比较基础的图标加载:和块元素的背景background ...

  9. 微信小程序使用字体图标的方法iconfont

    一. 先到阿里巴巴矢量图标库,搜索你想要的图标,然后添加入库. 将使用到的图标加入购物车 点击购物车 下载代码 获取字体库文件 二. 到这个平台 https://transfonter.org,把刚才 ...

  10. css怎样定义div大小,css如何设置div大小

    在css中,可以使用width属性和height属性来设置div大小,只需要给div元素设置"width:值"和"height:值"样式即可.width属性定义 ...

最新文章

  1. java map string stu_Java Map遍历的三种方式 | 学步园
  2. win oracle 重启命令,Windows下命令行如何启动Oracle10g?
  3. Android Studio 加载网络图片
  4. 让 SAP Spartacus 某些 Component 不参与 SSR 的办法
  5. 古巴比伦乘法_古巴平台中的通用过滤器–类固醇上的excel过滤器
  6. 不要被约束的意思_不要再奢望你会变得自律了丨“他律”比“自律”更重要
  7. 数据可视化 信息可视化_动机可视化
  8. oracle 用户管理
  9. mysql与python的交互
  10. argparse模块用法
  11. mpandroidchart 设置x轴数据_跟小白学Python数据分析——绘制条形图
  12. 如何用C语言打印出ASCII码表
  13. linux 有道 离线词典,有道词典离线版
  14. Halcon常见错误
  15. 河北省计算机对口试题,河北省对口计算机试题及答案.doc
  16. android学习笔记1
  17. 操作系统相关基础知识
  18. C语言单链表,能直接运行的代码!
  19. 六十星系之11紫微破军坐丑未
  20. LFS(the Log-structured File System)系统详解

热门文章

  1. Web项目部署到阿里云
  2. 二级MS office考试中一些常考的函数(Excel)(2)
  3. Java 基础实验 银行转账
  4. “缺少winload.efi”的解决办法“:Windows Boot Manager更改读取启动信息路径
  5. 【2019数学建模】国赛C题:机场出租车优化问题(原创)
  6. npm cnpm下载
  7. 解决npm下载慢或者下载不了的问题-三种解决方法
  8. 基于ssm的航空订票系统
  9. Fireworks免费下载
  10. linux版 tar.bz2如何解压,Linux下*.tar.bz2等文件如何解压--转