我想知道是否有一种方法可以给予所有的react-icons的icosn都具有相同的大小?特别是如果你使用不同的图标字体。
在我的例子中,我必须使用两种不同的字体,因为一种字体不提供必要的图标,但看起来像这样:
正如你所看到的,信息图标和注销图标看起来不错,但设置图标,嗯,没有那么多。
屏幕截图中的这些图标使用IconContext.Provider,如下所示:
<IconContext.Provider value={{className: "mr-2", size: "1rem"}}>
<div>
<props.icon/>
</div>
</IconContext.Provider>
现在我希望所有的图标都有16 x16像素的大小。但是正如你所看到的,它并不适合。
如果你能在这里给予我一个解决方案,或者知道任何可以解决这个问题的实用程序,那就太好了。
先谢谢你了!
2条答案
按热度按时间yhqotfr81#
我相信这个链接会有帮助
How to Style React-Icons
bd1hkmkf2#
TL;DR:避免混合太多不同的图标集
图标的大小和规格没有标准。这适用于svg库和图标字体。
大多数图标库都被设计为为所有图标提供一致的视觉大小和重量。
就像普通字体一样-有些字体的大写字母高度更高,比其他字体更大胆。
你能做的就是减少不同图标集的数量,并记住不同图标的来源。
这样,您可以定义调整规则来规范化视觉大小。
图标字体示例
SVG图标
一些图标可能有一个非常紧凑的
viewBox
,其他的可能有一些填充周围的等宽大小......和其他可能没有任何viewBox -通常不是一个伟大的想法,为响应式图标的使用。你也可以使用像icomoon.io这样的web应用程序在生成字体/svg集之前调整大小。
因此,通常最好选择一个图标集/库,理想地涵盖所有需要的图标。
其他图标(来自不同的库)应具有远程相似的度量和样式(例如,“FontAwesome”等圆角与“Material icons”中的尖角)。