帮助替换图标

我正在尝试按照这些说明 Replace Discourse's default SVG icons with custom icons in a theme 来替换用于打开/关闭侧边栏的 bars 图标,但不太成功。

我已经创建了一个包含我想要使用的侧边栏图标的精灵图(已模糊处理,因为它是一个专业的 fontawesome 图标)

创建了一个组件并上传了精灵图:

并使用了这段代码(我只想在桌面上进行更改)

但图标就是不显示:

有什么想法吗?我确定我遗漏了一些微小而愚蠢的东西!谢谢!

您是否尝试过使用小写文件名(例如 npn_spritesheet.svg)?
因为否则看起来应该可以工作(我可以用 v5 图标轻松做到,但我没有任何 v6 pro 的图标)。

除非仅仅是因为这个:

检查您网站 Logo 左侧的 <span> 元素时,您看到了什么?

例如,您的 symbol 标签上没有声明 viewbox,图标可能只是在视图之外。

2 个赞

奇怪的是,当我删除该资源并用小写版本重新上传时(我甚至将其重命名为 npnassets.svg,但我仍然看到旧文件名……

由于我下载了 SVG 并手动将其插入到精灵表中,我认为这不应该是一个问题,这就是我选择这条路线的原因,因为 v5 没有侧边栏图标。

2 个赞

您需要展开 svg 元素和所有嵌套元素才能看到图标代码。

1 个赞

图标精灵图代码未渲染。你仍然可以尝试将图标的 id 改为一个不带连字符的名称,例如 npnsidebar。有时我会在主题中遇到变量名问题,但找不到实际原因,不过进行一些小的调整就可以解决。

否则,你可以分享 svg 文件。我看到你将实际代码像素化了,但当你在网站上使用它时,它将是公开可访问的(编辑:啊,没看到这是来自专业计划的……)。

1 个赞

谢谢,我尝试将精灵表和代码中的名称更改为 npnsidebar,这样我就可以正确地替换精灵表了。但不幸的是,这并没有帮助。我可以私信您精灵表和 svg 以便您仔细检查我的工作。感谢您的帮助!

2 个赞

如果您将默认集中的 bars 图标替换为另一个图标,替换是否有效?例如,将其替换为 cogcomment

如果有效,那么问题出在您的自定义 SVG 符号代码上。它可能需要一个 viewBox 属性。就像这个自定义图标(用于 gifs 主题组件):

5 个赞

我昨天像这样用一个默认图标(代码图标)替换了它,并且有效,所以我认为正如你所说,确实是 viewBox 属性。

4 个赞

一切就绪,感谢你,Penar!

4 个赞

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.