新主题按钮隐藏文本

您好!我一直在尝试更改“新建帖子”按钮的样式,但一直找不到方法,想知道是否有人能提供一些解决此问题的想法。

这是桌面版和移动版“新建主题”按钮的外观:

响应式设计隐藏了按钮上的“新建主题”文本,我也希望在移动版上保留此文本,该如何实现?

此外,这是每个视图中出现的 HTML 元素:

移动版元素:

<button class="btn no-text btn-icon btn-default" id="create-topic" type="button">
<svg class="fa d-icon d-icon-far-pen-to-square svg-icon svg-string" xmlns="http://www.w3.org/2000/svg">
<use href="#far-pen-to-square"></use>
</svg>      
<span aria-hidden="true">
          ​
        </span>
    </button>

桌面版元素:

<button class="btn btn-icon-text btn-default" id="create-topic" type="button">
<svg class="fa d-icon d-icon-far-pen-to-square svg-icon svg-string" xmlns="http://www.w3.org/2000/svg">
<use href="#far-pen-to-square"></use>
</svg>      <span class="d-button-label">New Post</span>
    </button>

任何帮助都将不胜感激!

1 个赞

我们实际上没有很好的方法在移动设备上获取此文本,因此我添加了一个:DEV: add create-topic-label value transformer by awesomerobot · Pull Request #32621 · discourse/discourse · GitHub — 您的 Discourse 下次更新时将获得此功能。

此更改将允许您在远程主题的初始化程序文件中,或通过管理面板内的 admin/customize/themes 代码编辑器的 JS 选项卡来覆盖我们的默认行为:

import { apiInitializer } from "discourse/lib/api";

export default apiInitializer((api) => {

  api.registerValueTransformer("create-topic-label", ({ value, context }) => {
    return context.defaultKey;
  });

});

:backhand_index_pointing_up: 这将覆盖我们默认的移动/桌面切换标签,因此它将同时出现在两个地方:

3 个赞