
0 前言桌面应用的外观若靠代码逐个设置,样式逻辑会和业务逻辑缠在一起,每次视觉调整都要改代码重新编译。CSS(层叠样式表)把外观从代码中分离成一份独立数据:改样式不用动控件代码,全局外观切换也因此可行。GTK4 选用 CSS 作为标准样式机制,看中的正是这套 Web 世界沉淀多年的成熟方案——声明式、可层叠覆盖(见第 2.3 节),语法与 Web 开发类似,前端经验可以直接平移。本文从类选择器、ID选择器、后代选择器、伪类,讲到选择器优先级、动态样式切换、主题与暗色模式,最后借助 GTK Inspector 实时调试。文中所有代码均节选自一个可运行的完整示例(见第 7 节)。验证环境:Ubuntu 24.04 / 26.04 LTS1 CSS样式基础1.1 GTK CSS特性表1.1GTK CSS 与 Web CSS 的主要差异差异点GTK CSS 的做法属性范围只支持 Web CSS 的一个子集,未知属性被忽略并在运行时输出警告颜色变量