Object Hierarchy:

Object hierarchy for CssProvider


[ CCode ( type_id = "gtk_css_provider_get_type ()" ) ]
public class CssProvider : Object, StyleProvider

`GtkCssProvider` is an object implementing the `GtkStyleProvider` interface for CSS.

It is able to parse CSS-like input in order to style widgets.

An application can make GTK parse a specific CSS style sheet by calling [method@Gtk.CssProvider.load_from_file] or [ method@Gtk.CssProvider.load_from_resource] and adding the provider with [method@Gtk.StyleContext.add_provider] or [ func@Gtk.StyleContext.add_provider_for_display].

In addition, certain files will be read when GTK is initialized. First, the file `$XDG_CONFIG_HOME/gtk-4.0/gtk.css` is loaded if it exists. Then, GTK loads the first existing file among `XDG_DATA_HOME/themes/THEME/gtk-VERSION/gtk-VARIANT.css`, `$HOME/.themes/THEME/gtk-VERSION/gtk-VARIANT.css`, `$XDG_DATA_DIRS/themes/THEME/gtk-VERSION/gtk-VARIANT.css` and `DATADIR/share/themes/THEME/gtk-VERSION/gtk-VARIANT.css`, where `THEME` is the name of the current theme (see the [ property@Gtk.Settings:gtk-theme-name] setting), `VARIANT` is the variant to load (see the [ property@Gtk.Settings:gtk-application-prefer-dark-theme] setting), `DATADIR` is the prefix configured when GTK was compiled (unless overridden by the `GTK_DATA_PREFIX` environment variable), and `VERSION` is the GTK version number. If no file is found for the current version, GTK tries older versions all the way back to 4.0.

To track errors while loading CSS, connect to the [signal@Gtk.CssProvider:GtkCssProvider:parsing-error] signal.

Namespace: Gtk
Package: gtk4


Creation methods:



Inherited Members:

All known members inherited from interface Gtk.StyleProvider