如何将CSS添加到Vaadin/Maven项目?

mic*_*ico 5 css themes liferay vaadin maven

在SO上存在一个关于如何将CSS添加到Vaadin项目的问题.那里的提示是在/WEB-INF/VAADIN/themes/位置添加css .

我的问题是,Vaadin项目通常有WEB-INF文件夹WebContent,现在在Maven上有类似的文件夹webapp.这似乎导致我的CSS更改没有生效.

另外,是否有必要将自定义css与原始css 放在相同的子结构中?我想修改tablecss并且不知道css是否需要在特定路径中.

那么如何为表添加css以便更改表,而不仅仅是代码构建正确?:)

更新1:我可以通过Firebug得到以下的tempalate,但这是我最接近浏览器的东西.

<link rel ="stylesheet"type ="text/css"href ="/ html/VAADIN/themes/mytheme/styles.css">
<html>
<head>
<title> </ title>
</ head>

<body onload ="javascript:location.replace('/ c')">
<! - 下面的数字用于填充空间,以便在IE中正常工作.有关为何需要此操作的详细信息,请参阅http://support.microsoft.com/default.aspx?scid=kb;en-us;Q294807.
12345678901234567890123456789012345678901234567890123456789012345678901234567890
12345678901234567890123456789012345678901234567890123456789012345678901234567890
12345678901234567890123456789012345678901234567890123456789012345678901234567890
- >
</ BODY>
</ HTML>
</链路>

n0r*_*m1e 8

您可能会将styles.css文件放在该src/main/webapp/VAADIN/themes/[yourtheme]/文件夹中,并将Maven配置为将所有内容复制src/main/webapp到WEB-INF中.这样你的.css文件就会结束WEB-INF/VAADIN/themes/[yourtheme]/.

强烈建议从主题继承,而不是尝试覆盖默认主题的行为.

然后,您需要在应用程序中指定主题名称

public void init()
{
    setTheme("simplegae");
    ...
Run Code Online (Sandbox Code Playgroud)

并使你的.css文件继承自主题的css(runo,reindeer,...).

@import "../reindeer/styles.css";
Run Code Online (Sandbox Code Playgroud)

我最近使用Maven提供了一个示例Vaadin应用程序,可以在此地址访问.它的目的是在GAE上工作,但你可以从SVN查看它,看看我做了什么:

svn co http://code.google.com/p/tinywebgears-samples/source/browse/trunk/simplegae/ simplegae
Run Code Online (Sandbox Code Playgroud)