哪些 GTK+ 元素支持哪些 CSS 属性?
Which GTK+ elements support which CSS properties?
在将我自己的 CSS 应用于我的 GTK+ 应用程序时,我注意到一些元素忽略了一些 CSS 属性,而另一些元素忽略了其他元素或不忽略它们,这导致我搜索哪些元素支持哪些 CSS 属性的概述。
到目前为止我找不到任何这样的概述。
例如 Gtk.Label
根本不支持 border
,我不得不在其周围放置一个 Gtk.Frame
并在 CSS 文件中设置样式。另一个问题是,即使 Gtk.Frame
也不支持我想使用的 margin
。
谁能告诉我在哪里可以找到它?
(或者如果我弄错了所有这些,我如何让元素支持 CSS 属性?)
Here is an overview of which CSS properties are supported as of GTK 3.8. The same information is mostly contained in the documentation for GtkCssProvider
,尽管不是 table 形式。
哪些小部件支持哪些属性有点难。它归结为两种小部件:一种是简单的,只支持基本样式(没有边框或背景),例如 GtkLabel
;以及支持所有属性的那些,例如 GtkFrame
。正如您所发现的,将一个简单的小部件包装在 GtkFrame
或 GtkEventBox
中是将一个小部件转换为另一个的常用方法。
margin
属性 完全不受支持,我听说这是 GTK 开发人员的选择。据我了解,这种想法是 GTK 不是 HTML,屏幕上小部件的布局应该由您的代码而不是 CSS。
GTK 3.20 中的更新:margin
CSS 属性 现在支持大多数或所有小部件。
在将我自己的 CSS 应用于我的 GTK+ 应用程序时,我注意到一些元素忽略了一些 CSS 属性,而另一些元素忽略了其他元素或不忽略它们,这导致我搜索哪些元素支持哪些 CSS 属性的概述。
到目前为止我找不到任何这样的概述。
例如 Gtk.Label
根本不支持 border
,我不得不在其周围放置一个 Gtk.Frame
并在 CSS 文件中设置样式。另一个问题是,即使 Gtk.Frame
也不支持我想使用的 margin
。
谁能告诉我在哪里可以找到它? (或者如果我弄错了所有这些,我如何让元素支持 CSS 属性?)
Here is an overview of which CSS properties are supported as of GTK 3.8. The same information is mostly contained in the documentation for GtkCssProvider
,尽管不是 table 形式。
哪些小部件支持哪些属性有点难。它归结为两种小部件:一种是简单的,只支持基本样式(没有边框或背景),例如 GtkLabel
;以及支持所有属性的那些,例如 GtkFrame
。正如您所发现的,将一个简单的小部件包装在 GtkFrame
或 GtkEventBox
中是将一个小部件转换为另一个的常用方法。
margin
属性 完全不受支持,我听说这是 GTK 开发人员的选择。据我了解,这种想法是 GTK 不是 HTML,屏幕上小部件的布局应该由您的代码而不是 CSS。
GTK 3.20 中的更新:margin
CSS 属性 现在支持大多数或所有小部件。