Css 从JSF 1.1迁移到JSF 1.2后h:messages的不同结果

Css 从JSF 1.1迁移到JSF 1.2后h:messages的不同结果,css,jsf,websphere-7,websphere-6,Css,Jsf,Websphere 7,Websphere 6,在从WAS6.0+JSF1.1迁移到WAS7.0+JSF1.2之后,我遇到了页面呈现问题。主要问题出现在以下代码中: <h:messages rendered="#{!webData.facesMessagesEmpty}" styleClass="messages" showSummary="true" showDetail="false" title="Messages" layout="table" id="eMessages" infoClass="info_with_icon"

在从WAS6.0+JSF1.1迁移到WAS7.0+JSF1.2之后,我遇到了页面呈现问题。主要问题出现在以下代码中:

<h:messages rendered="#{!webData.facesMessagesEmpty}" styleClass="messages"
showSummary="true" showDetail="false" title="Messages" layout="table" id="eMessages"
infoClass="info_with_icon" warnClass="warn_with_icon" errorClass="error_with_icon"
fatalClass="fatal_with_icon" />

此代码在WAS6.0+JSF1.1下正常工作,但在WAS7.0+JSF1.2下不使用样式。我做了一点调查,发现这个问题只适用于layout=“table”。如果我使用layout=“list”,那么样式就可以了。不幸的是,我需要表(因为layout=“list”创建缩进,我不知道如何避免缩进)。我还发现,在layout=“table”情况下生成的HTML代码与JSF1.1和JSF1.2非常不同


所以我的问题是——有没有可能强制为WAS7.0+JSF1.2生成旧式(JSF1.1)HTML?我试着用谷歌搜索它,但找不到答案……

简而言之,JSF1.1将把
信息类和配偶放在
中的
中,但JSF1.2将把它放在

看起来您使用的是非常特定的CSS属性,
元素不支持这些属性。在这种情况下,您基本上有两种选择:

  • 将CSS声明改为应用于

    .info\u带有图标\u消息{
    /* ... */
    }
    
  • 布局更改为
    列表
    ,并在生成的
    类上添加以下CSS属性(在您的情况下为
    .messages
    ),以删除项目符号和缩进:

    。消息{
    列表样式类型:无;
    保证金:0;
    /* ... */
    }
    

  • 简而言之,JSF1.1将把
    信息类
    和配偶放在
    内的
    上,但JSF1.2将把它放在

    看起来您使用的是非常特定的CSS属性,
    元素不支持这些属性。在这种情况下,您基本上有两种选择:

  • 将CSS声明改为应用于

    .info\u带有图标\u消息{
    /* ... */
    }
    
  • 布局更改为
    列表
    ,并在生成的
    类上添加以下CSS属性(在您的情况下为
    .messages
    ),以删除项目符号和缩进:

    。消息{
    列表样式类型:无;
    保证金:0;
    /* ... */
    }
    

  • AFAIK生成的HTML输出应该没有区别。您能否显示导致问题的两个JSF1.x版本生成的HTML输出的相关部分?至于使用列表,缩进和项目符号很容易被CSS移除。这个解决方案也可以接受吗?JSF 1.1生成了这个代码:
    找到的TP数量是:0
    JSF 1.2
    • 当我使用列表布局时,找到的TP数量是:0
    (由于某种原因,表格布局没有采用样式,所以我不能使用它)。CSS类:-.info\u带有图标消息{--moz背景剪辑:边框;-moz背景原点:填充;-moz背景大小:自动;背景附件:滚动;背景颜色:透明;背景位置:0 0;背景重复:无重复;颜色:蓝色;浮动:无;列表样式图像:无;列表样式位置:外部;列表-样式类型:无;文本缩进:15px;}所以在第二种样式中没有项目符号,但我仍然看到缩进。有没有办法不缩进?我更多的是询问表布局的差异。如果出现
    layout=“table”,请编辑您的问题以显示生成的JSF 1.1和1.2的HTML
    .Hi BalusC,再一次:JSF1.1
    找到的TP数量是:0
    JSF1.2(这次使用表布局)
    找到的TP的数量是:0
    据我所知,不能有class属性,在这种情况下,我的浏览器不显示“info\u with\u icon\u messages”中的任何样式。AFAIK生成的HTML输出应该没有差异。您能为两个JSF 1.x版本显示生成的HTML输出的相关部分吗问题?关于使用列表,缩进和项目符号很容易通过一点CSS移除。这个解决方案也可以接受吗?JSF 1.1生成了这个代码:
    找到的TP数量是:0
    JSF 1.2
    • 当我使用列表布局时,找到的TP数量为:0
    (由于某种原因,表格布局没有采用样式,因此我无法使用)。CSS类:-.info\u带有图标消息{--moz背景剪辑:边框;-moz背景原点:填充;-moz背景大小:自动;背景附件:滚动;背景颜色:透明;背景位置:0 0;背景重复:无重复;颜色:蓝色;浮动:无;列表样式图像:无;列表样式位置:外部;列表-样式类型:无;文本缩进:15px;}所以在第二种样式中没有项目符号,但我仍然看到缩进。有没有办法不缩进?我更多的是询问表布局的差异。如果出现
    layout=“table”,请编辑您的问题以显示生成的JSF 1.1和1.2的HTML
    .Hi BalusC,再一次:JSF1.1
    找到的TP数量是:0
    JSF1.2(这次使用表布局)
    找到的TP数量是:0
    据我所知,不能有class属性,在这种情况下,我的浏览器不会显示“带有图标消息的信息”中的任何样式。谢谢你,巴卢斯克!出于某些原因,选项2没有帮助(不理解为什么),但第一个很好!谢谢你,巴卢斯克!出于某些原因,选项2没有帮助(不明白为什么),但第一个是好的!