JSF在样式表中设置样式?

JSF在样式表中设置样式?

问题描述:

所以我试图为每个用户创建一个可自定义风格的网页。您可以将样式选项保存为JSF bean属性中的字符串,并且可以非常轻松地在网页中使用内联样式属性或<style>标签访问它们,但是谁使用内联/ onpage样式?JSF在样式表中设置样式?

有什么办法可以将这些属性从JSF(2.0)bean转发到我的样式表,还是我只需要将<style>块添加到我希望可定制的页面?

编辑:我想我可以做一个函数将这些属性写入样式表,为每个用户制作一个属性,但这显然不是首选。

+0

如果你使用'h:outputStylesheet'标签,你可以在你的css中使用EL表达式。 – Adam 2012-08-11 15:14:49

对于完全自定义,您可以保存所有可变元素及其样式选项的样式表,并将它们与bean属性一起引用。

虽然这是相当多的样式表,但您可以定义自己的样式方案,并为用户在这些预定义的样式表之间进行选择。这不完全回答你的问题,但会节省很多工作

我不知道你的功能是什么,但其中一个方案是 - >

<h:outputStylesheet library="css" name="#{userBean.styleSheetName}" /> 

凡“的UserBean”有表的名称。

或者,您可以在样式标签之间输出样式表(如您所说)。如果你想坚持下去,你可以编写一个读取用户会话并生成缓存样式表的servlet。

我肯定会为您建议的功能使用servlet路由,但如果它只是用户有权访问的样式表的“集合”,我可能会按照第一个示例使用简单的动态属性。

+0

我应该说,你显然将那些在资源/ css/sheetName.css – 2012-08-10 19:42:25