似乎应该非常简单地指定 JSF 生成的 h:messages 应该使用 jQueryUI 的漂亮 ui-states 来设置样式。但遗憾的是我不能让它适合。似乎 jQueryUI 状态需要几个元素(div、div、p、span)才能使其工作。
所以直接从 jQueryUI 主题演示页面获取灵感:
<!-- Highlight / Error -->
<h2 class="demoHeaders">Highlight / Error</h2>
<div class="ui-widget">
<div class="ui-state-highlight ui-corner-all" style="margin-top: 20px; padding: 0 .7em;">
<p><span class="ui-icon ui-icon-info" style="float: left; margin-right: .3em;"></span>
<strong>Hey!</strong> Sample ui-state-highlight style.</p>
</div>
</div>
<br/>
<div class="ui-widget">
<div class="ui-state-error ui-corner-all" style="padding: 0 .7em;">
<p><span class="ui-icon ui-icon-alert" style="float: left; margin-right: .3em;"></span>
<strong>Alert:</strong> Sample ui-state-error style.</p>
</div>
</div>
并尽我所能将 css 类的详细信息塞进我的 h:message 中:
<div class="ui-widget">
<h:messages globalOnly="true" errorClass="ui-state-error ui-corner-all ui-icon-alert" infoClass="ui-state-highlight ui-corner-all ui-icon-info"/>
</div>
我没有得到图标或足够的填充等,但颜色可以通过。因此,样式正在被应用,但它们没有按预期工作。
知道我怎样才能完成这项工作吗?