seamとIE6

IE6はRichFacesのSkinスタイルを思いっきり無視するので要注意。

特にcommandButtonとcheckBoxは「ただのinput」とみなされ、色もマージンも妙なコトになる。

theme.cssをみると

input, textarea {

border: 1px solid #BBBBBB;

font-size: 12px;

background: #F0F8FF;

color: black;

}

input[type="submit"], input[type="button"],.hinput {

background: #4477AA;

color: white;

margin: 5px;

padding: 2px; border-color: gray;

}

こうなっている。

つまり

1.input指定でinput要素全てに対してスタイルを設定。

2.input[type=""]で、特定の要素(ここではbotton、submit)のスタイルをオーバーライド。

という流れ。

つまり、IE6は2のinput[type=""]を無視するわけだ。

しかし、様々なCSSハックを行っても何故か状況は変わらず…(通常のHTMLではうまくいった)。

結局faceletsに

<style>

.input_class {

border: 1px solid #BBBBBB;

font-size: 10px;

background: #F0F8FF; color: black;

}

.check_class {

background-color: transparent;

border: none;

margin-left: 5px;

margin-right: 5px;

}

.button_class {

background: #4477AA;

color: white;

margin-left: 5px;

margin-right: 5px;

padding: 2px;

border-color: gray;

}

</style>

のようにべた書きして、各要素でstyleClassを使って強制指定することで、ようやく解決した。

う~ん…Vistaがずっこけたので、企業ではいまだにXPがほとんど。

アップデートを意図的に抑制している企業も多くて、IE6はまだ無視出来ない。

PHPやHTML開発でもそうだがIE6には、もうウンザリ。

いつまでWEB開発者は、こんな無駄な時間を浪費せざるおえないのだろうか…。

コメントは受け付けていません。