我正在GWT中构建一个应用程序并拥有我的平面设计师的皮肤,我已经使用UIBinder将其插入应用程序,它的工作非常精彩。现在我想使用ClientBundle捆绑所有图像。
这些图像的Mayne用于css文件,例如
.nav {background:url(nav_bg.jpg)left top repeat-x;高度:27px;明确:两者;}
在此css之前,我已经定义了一个包含该包的标签。
如何更改css条目以便它使用ClientBundle中的ImageResource?我想我可以为所有的html标签做内联样式,但那是可怕的分离和很多额外的工作。
我已经在uibinder文件的html部分成功使用了ImageResources(例如在a中),但我在css中看不到如何做到这一点。我甚至在一个区块内插入了css,但我仍然没有看到正确的方法。
有什么建议吗?
答案 0 :(得分:2)
ClientBundles现在也可用于托管CssResources。 这些CssResources是具有一些额外功能的CSS文件。
GWT的文档描述了您在ImageSprites。
部分中所需的内容答案 1 :(得分:0)
我最终完全跳过了GWT css和图像捆绑。相反,我使用由设计/雕刻团队制作的css sprited图像块完成了我的雕刻。这有这些优点。
1 /更少的css移植,因为我可以将html直接插入ui binder并使用雕刻中的css标签,即不使用uibinder css。只要html结构与雕刻相匹配,那么将所有css迁移到gwt css中的工作要少得多。2 /它还允许我在应用更改时使用svn / diff - 这在使用gwt css / image spriting时是不可能的。
3 /我可以轻松地将image / css文件放在CDN上,因为加载标记位于主页中并且不受同源限制的影响。仅供参考:是的我知道XS链接器是另一种方法。当雕刻使用css进行定位时我不再有用,我想使用LayoutPanels,但只要我请求布局css与样式css分开,这就不算太糟了。
所以最后我发现,在使用第三方设计/雕刻时,避免使用gwt css / images要比使用传统的css spriting和minification再现相同的好处要容易得多。我希望这有助于某人。