哪些GTK +元素支持哪些CSS属性?

时间:2015-08-23 01:32:43

标签: python css gtk

在将我自己的CSS应用到我的GTK +应用程序时,我注意到,有些元素忽略了一些CSS属性而其他元素忽略了其他属性或者没有忽略它们,这使我找到了哪些元素支持哪些CSS属性的概述。

到目前为止,我找不到任何此类概述。

例如,Gtk.Label根本不支持border,我必须在其周围放置Gtk.Frame并在CSS文件中设置样式。另一个问题是,即使Gtk.Frame也不支持我想要使用的margin

任何人都可以给我一些关于在哪里找到它的方向吗? (或者,如果我误解了所有这些,我如何使元素支持CSS属性?)

1 个答案:

答案 0 :(得分:4)

Here概述了从GTK 3.8开始支持哪些CSS属性。相同的信息主要包含在GtkCssProvider的文档中,尽管不是表格形式。

哪些小部件支持哪些属性有点难度。它归结为两种小部件:简单且仅支持基本样式(无边框或背景)的小部件,例如GtkLabel;以及那些支持所有属性的属性,例如GtkFrame。正如您所发现的那样,在GtkFrameGtkEventBox中包装一个简单的小部件是将一个转换为另一个的常用方法。

根本不支持margin属性,我被告知这是GTK开发人员的选择。根据我的理解,我认为GTK不是HTML,屏幕上的小部件布局应该由您的代码而不是CSS来控制。

GTK 3.20更新:现在大多数或所有小部件都支持margin CSS属性。