css 选择器 java server faces 标签

标签 css jsf

我正在使用 jsf 标签(commandLinks)实现一个下拉列表。

我对 jsf 中的 css 选择器有疑问。

当我将鼠标悬停在“关于”的 commandLink 类上时,我想将其他 2 个 commandLink 的字体颜色更改为红色。

这是我的尝试:

在CSS文件中

.about:hover .sub{
    color: red;
}


<h:commandLink styleClass="about" value="About us ▾" action="/about"/>
<h:commandLink styleClass="sub" value="test1"    action="/customers"/>
<h:commandLink styleClass="sub" value="test2" action="/license" />

但没有任何变化。这个我也试过

.about:hover > .sub{
    color: red;
}

也没用。

最佳答案

您的菜单中遗漏了一些东西,您需要了解父/子概念。 css 选择器 .about .sub 将选择带有父级 about 的子级 sub。在您的情况下,您根本没有层次结构。

几乎所有菜单都使用这个简单的概念:

<ul>
    <li class="about">
        <h:commandLink value="About us ▾" action="/about"/>
        <ul class="sub">
            <li><h:commandLink value="test1" action="/customers"/></li>
            <li><h:commandLink value="test2" action="/license" /></li>
        </ul>
    </li>
    <!-- ... other top level menus ... -->
</ul>

现在你的 css 选择器可以工作了:

.about:hover > .sub {
    color: red;
}

关于css 选择器 java server faces 标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23850489/

相关文章:

java - JSF2 "f:ajax render"渲染超过指定的 id

jsf - 动态JSF(2.0)commandButtons-使用参数设置操作

html - 如何让我的脚本适合移动设备?

css - firefox 无法获取 style.css 上的#header(其他网络浏览器没问题)

css - iPhone Web App - 停止 body 滚动

java - 来自 Servlet 的有效 URL 出现 404 错误

java - 我可以确定是否在复合组件中定义了 JSF2 构面吗?

java - JSF/Java 设计问题

html - 我怎样才能把一个div标签自动转到下面的位置:relative div

javascript - 点击下拉菜单