首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JSF h:outputStylesheet转换器-动态css?

JSF h:outputStylesheet转换器-动态css?
EN

Stack Overflow用户
提问于 2012-01-05 19:41:42
回答 1查看 2.5K关注 0票数 5

我刚刚注意到<h:outputStylesheet/>有一个转换器属性。在将虚拟(直通)转换器附加到它之后,什么也没有发生。仔细检查一下,即使点击了浏览器刷新按钮,转换器似乎也没有被调用。

这个属性有什么好处吗?这只是不同设计决策的副作用吗?

我这样问的原因是,使用less或类似的工具执行一些客户端或服务器端的css处理会很好,我认为这个属性可能会有所帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-01-05 22:08:31

这个属性有什么用吗?这只是不同设计决策的副作用吗?

这确实是“故意的”,因为该组件扩展了UIOutput。它确实没有使用转换器做任何事情。

我问这个问题的原因是,如果能用更少或更类似的代码来执行一些客户端或服务器端的css处理,那就更好了,我想这个属性可能会有所帮助。

你可以在<h:outputStylesheet>加载的CSS资源中以通常的方式使用EL。这最初是为了正确解析背景图像资源而实现的。

代码语言:javascript
复制
.some {
    background-image: url(#{resource[images/some.png]});
}

上面的示例假设图像是/resources/images/some.png格式的。如果使用的是库,则需要在资源名称前加上libraryname:前缀。

代码语言:javascript
复制
.some {
    background-image: url(#{resource[somelibrary:images/some.png]});
}

它假设图像是/resources/somelibrary/images/some.png格式的。

但除此之外,您基本上可以将CSS资源中的EL用于其他任何事情。例如动态解析颜色、字体等。

代码语言:javascript
复制
.some {
    color: #{theme.color};
    font: #{theme.font};
}

其中#{theme}可以是会话,也可以是应用程序范围的托管bean。

票数 12
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8741903

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档