我正在开发使用Gtk CSS的应用程序。
我需要得到这个结果:
带圆角的方格为EventBox
,名称为content
。
明显的CSS代码适用于Gtk 3.8和Gtk 3.10:
#content
{
border-radius: 20px;
background: red;
}
但是使用Gtk 3.6或3.4它失败了 - 边界外的背景不透明:
当我使用此代码时:
#content
{
border-radius: 20px;
background: linear-gradient(to top, red);
}
我得到了这个结果(左上角的小点):
我需要使用哪种容器或css来获得所需的结果?
感谢您的帮助。
用于测试CSS的Python代码:
from gi.repository import Gtk
from gi.repository import Gdk
CSS_DATA = """
/* Some css */
"""
window = Gtk.Window()
window.set_size_request(300, 300)
content = Gtk.EventBox()
content.props.name = "content"
content.props.margin = 50
button = Gtk.Button("button")
button.props.halign = Gtk.Align.CENTER
button.props.valign = Gtk.Align.CENTER
content.add(button)
window.add(content)
window.show_all()
css = Gtk.CssProvider()
css.load_from_data(CSS_DATA)
style_context = window.get_style_context()
style_context.add_provider_for_screen(Gdk.Screen.get_default(), css, Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION)
Gtk.main()