• 24
  • Aug

本文原载于iBentu:GTK将正式支持类CSS主题样式

本站在2008年曾报道过关于“GTK+CSS引擎”的新闻(见此《GTK+CSS主题引擎0.1版发布》和《GTK+ CSS引擎逐渐完善:支持border-image!》,当时基于CSS的GTK+主题引擎已经渐渐开始完善,然而经过两年的发展,似乎没有了后文。

一个主要的原因是,之前开发者是在GTK+的外围(即主题引擎)上做的工作,缺少对核心部分的掌控使得该主题引擎无法全面发挥CSS的作用,同时与GTK+的结合也不是很完美。

而现在,GTK+已经开始在内部获得对CSS的支持,即通过新增的GtkStyleContext。如果一切顺利的话,GTK+的CSS支持将在3.0版本正式完成。

在GTK+的官方开发分支(gtk-style-context)中,开发者已经差不多完成了对CSS的支持,主要有两大特性:

  • 完全使用Cairo进行图像绘制,这意味着不论在Linux下,还是在Windows、Mac下都会有一致的效果;
  • 动画效果的支持,不需要在主题引擎中进行hack;

从此制作GTK+主题就像写网页的CSS一样,特别是动画的支持。比如我需要在复选按钮在勾选的时以一个“ease-in-out”的动画呈现,则只需:

GtkCheckButton:active {
transition: 200ms ease-in-out;
}

可以想像,在该开发分支正式合并至主干,并顺利发布GTK+3.0以后,GTK+的主题世界将会有一个全新的面貌展现出来!

来源:CSS-like styling for GTK+

Tags: css, GTK.

» You can leave a comment.

6 Comments

  1. 之前用過單獨的CSS引擎,BUG蠻多
    問題也問多.等官方啦

  2. 哈哈,这个真是太好了,期待阿。

  3. 这么犀利的...话说...今天吃饭的时候胖胖说你是外星人

  4. 看来CSS确实得好好学学阿

Leave a Comment