css - SAPUI5 中的自定义字体 - 使用自定义字体覆盖整个主题及其控件字体

标签 css fonts themes sapui5

我们是否可以将现有主题及其控件覆盖为自定义字体?

问题:我可以用我的自定义字体覆盖全局字体,但我不能覆盖每个控件字体,因为所有控件都分配了自己的 Font 属性,而不是继承自全局。

有什么解决办法吗?

最佳答案

UI5 主题和 LESS

UI5 正在使用 LESS在内部以舒适的方式启用主题。 LESS 是一个扩展 CSS 功能的 CSS 预编译器。其含义和缺点是交付的 UI5 主题已经预编译,这意味着您的应用程序仅使用生成的纯 CSS。

UI5 主题工具

遗憾的是,到目前为止,它背后真正的 UI5 工具还没有向我们的开发人员公开。他们提供的唯一工具是 Theme Designer .甚至还有点播版here .使用 Theme Designer,您应该能够根据需要轻松更改样式。

破解 UI5 主题

但主题中包含的所有 ControlName.css 文件仍然是未编译的 less 文件,您可以在 library.less 文件中找到 UI5 使用的所有 LESS 变量。因此,通过一些黑客攻击,您应该能够将这些 LESS 文件重新编译成一个新的 library.css 文件,该文件在运行时使用。库的所有 css 文件都与 library.less 组合并编译成一个文件 - library.css

因此,如果您想了解更多详细信息并了解幕后发生的事情,请查看 library.less 文件 例如http://[host][:port]/[path_to_my_application]/resources/sap/m/themes/sap_bluecrystal/library.less

您会在其中找到所有 UI5 LESS 变量。您可能最感兴趣的是 @sapUiFontFamily

无论如何,我不建议在这里进行太多更改,因为新的 UI5 版本很容易破坏您的样式!

关于css - SAPUI5 中的自定义字体 - 使用自定义字体覆盖整个主题及其控件字体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24903697/

相关文章:

jquery - 当一个 div 接触另一个 div 时显示边框颜色

css - Font-Awesome 不显示字体?

Mac OS X 上的 Java 应用程序无法正确打印字体

java - 更改 BlueJ/Java 中的 system.out 字体和颜色

javascript - Bootstrap 主题 js 在生产中不起作用,但在开发中起作用(Rails)

javascript - 按钮函数 OpenInNewTab 在 <figcaption> 中无法正常工作

html - 链接中包含的 iframe 的大小 - 如何调整移动/桌面的大小?

Eclipse 4 朱诺主题

css - 为什么这个响应式主题以全桌面大小显示?

css - 柔性 : When text too long break into new line