css - 将 CSS 应用于 <f :selectItem> nested in <h:selectOneMenu>

标签 css jsf

我想应用特定于 <f:selectItem> 的 CSS在 <h:selectOneMenu>以不同的风格展示。

例如我希望下面列表中的每个咖啡选项都以不同的颜色显示。

<h:selectOneMenu value="#{user.favCoffee1}"> 
   <f:selectItem itemValue="Cream Latte"   itemLabel="Coffee3 - Cream Latte" /> 
   <f:selectItem itemValue="Extreme Mocha" itemLabel="Coffee3 - Extreme Mocha" /> 
   <f:selectItem itemValue="Buena Vista"   itemLabel="Coffee3 - Buena Vista" /> 
</h:selectOneMenu>`

有人能帮我吗?

最佳答案

<f:selectItem>呈现 HTML <option>元素。它对 CSS 样式的支持非常有限。 color属性(property)不在其中。更重要的是,它仅适用于 MSIE,不适用于其他网络浏览器。然而,没有办法给每个 <option>自己的元素 style JSF 的属性,最接近的是在所有选项上应用 CSS 规则并接受它仅在 MSIE 中工作。

<h:selectOneMenu styleClass="mymenu">

.mymenu option {
    color: red;
}

最好的办法是用 <ul><li> 替换下拉菜单用一个很好的 CSS/JavaScript 来模拟它看起来像一个下拉菜单。一些 JSF 组件库有这样的组件,例如 PrimeFaces 的 <p:selectOneMenu> .检查其 3.0 showcase 中的自定义内容示例.

关于css - 将 CSS 应用于 <f :selectItem> nested in <h:selectOneMenu>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6747311/

相关文章:

JQuery 自动完成 : changing look and feel

validation - 仅当验证未失败时,如何使用目标 =“_blank” 在新窗口中打开报告

jsf - 具有 Facelet 中的属性的自定义验证器

javascript - 自动完成输入文本事件

html - 为 Angular [Elements] 小部件隔离/范围所有 SCSS 样式的最简单方法是什么?

javascript - 如何在 Javascript 中使用 URL 链接不同的幻灯片图像

html - 第一个网页设计和代码,Dreamweaver HTML 和 CSS

css - 在 Sass 中比较 var 是 Hex 还是 RGBA

java - JSF Richfaces 前端性能调优

jsf - javax.el.PropretyNotWritableException : The class Article does not have a writable property 'id'