2010-10-02 60 views
1

在我的CSS,我把:UiBinder的CSS文字隐藏选项

.someClass { 
    width: literal("expression(this.width > 40 ? 40: true)"); 
} 

这是正确的语法?我试过了,但在Firefox上用Firebug进行调试时没有输出结果。我试图在IE6中进行最大宽度的工作。

+1

我不太了解字面函数(文档很亮:http://code.google.com/p/google-web-toolkit/wiki/CssResource#Literal_function),但我不认为你可以在它们中引用'this',只是文档等。 – 2010-10-02 04:29:12

+1

你的条件表达式似乎是错的,顺便说一句。它应该像'this.width> 40? 40:this.width'(至少,这是C++/Java中这些表达式的语法)。 – 2010-10-02 13:15:10

+0

ya。我测试表达式(this.width)似乎不支持gwt uibinder – cometta 2010-10-12 02:44:20

回答

1

这可能是实现最大宽度与IE6的帮助:http://www.svendtofte.com/code/max_width_in_ie/

+0

该文没有提到this.width。并且文章仅指导设置整个clientWidth。我只想设置一个html元素的最大宽度 – cometta 2010-10-13 02:30:35

+1

是的,对不起。你是否尝试了'document.getElementById('id')。offsetWidth'而不是'this'的解决方法?顺便说一句:你提交这个问题? http://code.google.com/p/google-web-toolkit/issues/detail?id=5337 – z00bs 2010-10-13 13:25:04

1

这可能是这样做的CSS之外,在JavaScript的情况下。或者,如果你正在做大量的DOM操作,那么可以考虑使用jQuery。