Hi Pierre-Luc, Do you notice this problem only in Internet Explorer? This particular browser has poor support for compound style classes and your test might be running into the bug. If it is an IE-only issue, perhaps the order of the style classes could be rearranged to work around the issue.
Here's a smaller demo showing IE applying incorrect styles: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" " http://www.w3.org/TR/html4/strict.dtd"> <html> <body> <style> .af_navigationLevelTabs_tabs-mid { color: black; } .af_navigationLevelTabs_tabs-inactive .af_navigationLevelTabs_tabs-mid { color: yellow; } .af_navigationLevelTabs_tabs-inactive.p_AFDisabled.af_navigationLevelTabs_tabs-mid { color: green; } .RichPanelPageMainCenter { color: white; } .RichPanelPageMainCenter .af_navigationLevelTabs_tabs-mid { color: orange; } .RichPanelPageMainCenter .af_navigationLevelTabs_tabs-inactive .af_navigationLevelTabs_tabs-mid { color: blue; } .RichPanelPageMainCenter .af_navigationLevelTabs_tabs-inactive.p_AFDisabled.af_navigationLevelTabs_tabs-mid { color: red; } .RichPanelPageMainCenter .af_navigationLevelTabs_tabs-active.p_AFDisabled.af_navigationLevelTabs_tabs-mid { color: pink; } </style> <div class="af_navigationLevelTabs_tabs-inactive"> <div class="y"> <div class="af_navigationLevelTabs_tabs-mid"> non-disabled </div> </div> </div> <hr/> <div class="af_navigationLevelTabs_tabs-inactive p_AFDisabled"> <div class="y"> <div class="af_navigationLevelTabs_tabs-mid"> disabled </div> </div> </div> <hr/> <div class="RichPanelPageMainCenter"> <div class="x"> <div class="af_navigationLevelTabs_tabs-inactive"> <div class="y"> <div class="af_navigationLevelTabs_tabs-mid"> RichPanelPageMainCenter non-disabled </div> </div> </div> </div> </div> <hr/> <div class="RichPanelPageMainCenter"> <div class="x"> <div class="af_navigationLevelTabs_tabs-inactive p_AFDisabled"> <div class="y"> <div class="af_navigationLevelTabs_tabs-mid"> RichPanelPageMainCenter disabled </div> </div> </div> </div> </div> <hr/> <div class="RichPanelPageMainCenter"> <div class="x"> <div class="af_navigationLevelTabs_tabs-active"> <div class="y"> <div class="af_navigationLevelTabs_tabs-mid"> RichPanelPageMainCenter non-disabled </div> </div> </div> </div> </div> <hr/> <div class="RichPanelPageMainCenter"> <div class="x"> <div class="af_navigationLevelTabs_tabs-active p_AFDisabled"> <div class="y"> <div class="af_navigationLevelTabs_tabs-mid"> RichPanelPageMainCenter disabled </div> </div> </div> </div> </div> </body> </html> --Matt On 8/18/06, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
Hi, this mail is based on http://issues.apache.org/jira/browse/ADFFACES-97 as it is stated, currently, when a PanelBorderLayout get rendered, the StyleClass for label part of a component all get generated at the same time and all are put on the <td> of the panelform component. That itself is a bug since as its said, with af|panelFormLayout::label-cell defining some skinning and ALSO af|inputTex::label. The skinning for form layout get applied. The solution proposed to correct this behavior was to put the StyleClass of af|inputTex::label directly on the <label> markup. However, the issue also implies the use of :disabled pseudo class. After having done a fews tests, I see that the current rendering doesn't works very well with the "p_AFDisabled" tag that is put in the class=" * " to specify if a component should have the disabled styleclass applied. When an input* is outside of a PanelFormLayout and is disabled, the disabled works ok, as the tag is rendered at RootDomElement level. What this results in is something like this : Exemple 1: <table id="_id4__xc_" class="x18 p_AFDisabled" summary="" border="0" cellpadding="0" cellspacing="0"> <tbody> <tr> <td class="" nowrap="nowrap"> <label class="xu p_AFDisabled" for="_id4">I'm outsideDisabled: </label> </td> <td class="AFContentCell" nowrap="nowrap" valign="top"> <input id="_id4" name="_id4" disabled="disabled" class="x1l" size="30" type="text"> </td> </tr> </tbody> </table> The trouble is when inside a PanelFormLayout, disabled doesn't get checked anywhere in the code and the resulting markup is: Exemple 2: <div class="af_panelFormLayout"> <table summary="" style="width: auto;" border="0" cellpadding="0" cellspacing="0"> <tbody> <tr> <td class="x43" colspan="1"> <table summary="" border="0" cellpadding="0" cellspacing="0" width="100%"> <tbody> <tr> <td> </td> <td> </td> </tr> <tr> <td class="x46" nowrap="nowrap"> <label class="xu" for="_id8">IshouldbeYELLOW_Maroon </label> </td> <td class="x48" nowrap="nowrap" valign="top"> <input id="_id8" name="_id8" disabled="disabled" class="x1l" size="30" type="text"> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> </div> I've tried adding the "p_AFDisabled" inside the class on the <label> markup doing the same check that is done with input* outside of a PanelFormLayout but its seems that unless the tag for disabled is on the class=" * " of the <table> markup the style doesn't get applied. Since I havn't found why it must be on the <table> level markup, i'm turning to this list if somebody know why its this behavior. In other word, I'm asking if someone know why the exemple 1 with "p_AFDisabled" will generate the correct styleClass for disabled while something like the following doesn't results in the correct style being seen by the user. Example 3: <div class="af_panelFormLayout"> <table summary="" style="width: auto;" border="0" cellpadding="0" cellspacing="0"> <tbody> <tr> <td class="x43" colspan="1"> <table summary="" border="0" cellpadding="0" cellspacing="0" width="100%"> <tbody> <tr> <td> </td> <td> </td> </tr> <tr> <td class="x46" nowrap="nowrap"> <label class="xu p_AFDisabled" for="_id8">IshouldbeYELLOW_Maroon </label> </td> <td class="x48" nowrap="nowrap" valign="top"> <input id="_id8" name="_id8" disabled="disabled" class="x1l" size="30" type="text"> </td> </tr> </tbody> </table> </td> </tr> </tbody> </table> </div> I hopes this isn't too confusing ! if is it I could always try to explain it while directly adding screenshot and page example on the ADFFACES-97 comments
