使用小部件打包css
我想打包一个小部件,以便轻松地包含在任意项目中。我不想要求用户在他们的主页中链接到我个人创建的样式表 - 我只是想在使用我的代码时神奇地注入css。
我知道CssResource可以在某种程度上实现这个梦想,但在搜索文档之后,我没有找到任何对自然类型选择器的引用。例如,我想在我的小部件中设置
<tr>
s的样式,而不必为每个小部件添加类名。
这是否可以通过GWT实现? GWT自己的小部件都经过了非常彻底的设计,但似乎他们为DOM中的每个元素添加了一个样式类!
没有找到相关结果
已邀请:
3 个回复
琳娘
或UiBinder的内联
将实现你想要的。关于按类型而不是类的样式元素,它当然可以完成:
然而,GWT有理由优先使用显式类名而不是后代选择器:例如,如果你有上面的样式,每次浏览器呈现一个
元素时,它必须走向DOM并访问该元素的所有祖先看他们中是否有人有
班。如果你的应用程序使用了很多
元素(这里的
会是一个更好的例子),其中大部分都没有
祖先,它可能会导致渲染性能明显下降。
卧沫
现在你不必为每个tr分配一个类 - 你只需使用选择器“
”,它只适用于标有class属性
的某个元素中的
s(顺便说一下,不一定是
) 。当然,没有UiBinder,同样的原则也可以。
疾桓
可以很容易被网站CSS推翻
会这样做 - 你的
也是这两个ID的后代,并且因为他们的规则有2个ID而你的那个,你的CSS会丢失 - 不可能猜到网站的每个排列CSS所以最简单的方法是添加所有这些“额外”类以及为什么YUI和Blueprint都是这样 然而,如果你写你的CSS:
你的可能永远会赢,因为从来没有在他们的CSS中他们的目标可能是你的小部件ID的直接孩子(除非他们选择定制你的,他们可以做的“班级一切”方法也是如此) 所以要防止你的CSS而不添加所有类的类..我假设你的小部件已经有一个独特的iD包装器?然后,如果你还没有内部div包装器,添加一个,它不需要有一个类,但给它一个将在这个技术上放置一个额外的防弹层。 然后用
作为所有规则的前缀,例如
- 站点拥有规则,无论加权多么重要(选择器中的许多ID和类使选择器更加加权),一旦它们无法匹配特定组合,它们就会失败 - 所以你的tr是安全的,不能从站点CSS接管;) 添加一个div或类,搜索并替换你的CSS,为所有东西添加前缀..至于如何打包我不知道