- ベストアンサー
fieldsetについて
スタイルシートに、 <style type="text/css"> <!-- fieldset { padding: 0.5em; margin: 0.5em; BORDER-BOTTOM: #999999 2px dotted; BORDER-LEFT: #999999 2px dotted; BORDER-RIGHT: #999999 2px dotted; BORDER-TOP: #999999 2px dotted;} --> </style> と記述し、 <body> <fieldset> <legend>test</legend> <table> <tr> <td>テスト</td> </tr> </table> </fieldset> </body> とやっても、fieldset上の線がドットになりません。線の太さを1PXにするとなるのですが、どちらにせよlegendの”test”にも線がかぶってしまいます。 どうすればいいでしょうか??記述が間違っていればご指摘ください。 IE6を使っています。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
スタイル指定なしで表示させてみてください。IE6ではfieldsetが枠線で囲まれ、上の線上にlegendが重なるように表示されます。これがデフォルトのスタイルですので、重なるのが正解、です。 で、これをスタイルシートで枠線の種類を変えると、IEでは上の線がおかしくなります(#1の方の指摘通りバグでしょう)。 それはさておき、legendの外側に枠線を持っていきたい、ということのようなので、fieldsetの外側にdiv要素を定義し、このdiv要素に点線の枠線を与える、というのが(HTMLとしては美しくないですが)簡単です。 <style type="text/css"> <!-- div.Box1 { padding: 0.5em; margin: 0.5em; border:2px #999999 dotted;} div.Box1 fieldset {border:none} --> </style> <body> <div class="Box1"> <fieldset> <legend>test</legend> <table> <tr> <td>テスト</td> </tr> </table> </fieldset> </div> </body> divに枠線を与えると同時に、div内のfieldsetからは枠線を除いています。
その他の回答 (3)
- ryota2
- ベストアンサー率43% (61/140)
CSS Level 1の仕様書をみてみました。 5.5.22 'border' Value: <border-width> || <border-style> || <color> Initial: not defined for shorthand properties Applies to: all elements Inherited: no Percentage values: N/A ( http://www.w3.org/TR/REC-CSS1#border ) 「border:2px dotted #999999;」のように直しても上の線がおかしいです。IEのバグと思われますので、これだけはどうしようもありません。 どうしてもやりたいのであればテーブルを組んで画像を使うといいです。
- the845t
- ベストアンサー率33% (246/743)
とほほのWWW入門によると、 width style colorの順番ですが、 仕様書によるとその順番でも良いのですか? 読んでないので分かりませんが、それが間違っているということはありませんか?
- ryota2
- ベストアンサー率43% (61/140)
IEのバグではないでしょうか。 Opera6.05(Win)では正常に表示されます。