• ベストアンサー

背景を固定した時の表の背景

こんにちは。HPを制作し始めたばかりの初心者です。 質問です。 背景をこんな感じて固定した時 <STYLE type="text/css"> <!-- BODY{ background-image : url(○○.jpg); background-repeat : no-repeat; background-attachment : fixed; background-position : 90% 50%; } --> 作ってる表の背景画像が無効になっちゃいます。 なんか間違ってるんでしょうか??? お答えを頂けると有り難いのですが。

質問者が選んだベストアンサー

  • ベストアンサー
  • yasite
  • ベストアンサー率50% (8/16)
回答No.3

理屈からいくとBODYの背景が1番後ろで、TABLEの背景が2番目に後ろで、最前面がテキストとなるわけなので、ページ全体の背景画像とテーブル内の背景画像は表示されるハズなのですよね。 で、試しに <style type="text/css"><!-- body { background : #fffff0 url("○○.gif") 0% 0% no-repeat fixed ;} th { background : #3b3b3b url("○○.jpg") repeat ;} td { background : #6699cc url("○○.gif") 50% 50% repeat-x scroll} --></style> <body> <table align="left" height="10%" width="100%" border="2" cellspacing="0" cellpadding="2"> <th rowspan="11">test</th> <td>td-test</td></table></body> というのを作ってみました。これを改造して作ってみてください。 もしかして、CSSでTD要素に背景画像を固定させて、今度はTD要素の属性で背景画像を並べる、ということでしたらレンダリングされないです。そもそもその使い方はかなりおかしいですし。 あと、Netscape社のブラウザではBODY要素以外の背景画像以外はレンダリングがおかしくなることが多いです。

その他の回答 (2)

  • yasite
  • ベストアンサー率50% (8/16)
回答No.2

表示確認のためGodardさんのやり方でソースを書きましたが、BODYの背景画像固定も表示、TH要素の背景画像も並んで表示されました。2つ同時に表示されましたのでブラウザは認識しているようです。表示確認に使用したのはWINIE6です。 しかし、すべてのブラウザが思ったようにレンダリングするとは限りませんので、もしかすると環境が変れば表示しないかもしれないです。 > の○○.gifがなくなっちゃうんです。 > そういうもんなんですか? なくなるというのは、ブラウザが背景を表示しないということですか? それともソースに記述している"○○.gif"という部分をオーサリングツール(HP作成ソフト)が消してしまう、または無効にしてしまうということですか? 以下のURLの「CSS」も参考にしてみてください。

参考URL:
http://www.venus.dti.ne.jp/~hok/
noname#10796
質問者

お礼

再度回答ありがとうございます。 「なくなる」というのは、 ブラウザが表示しないという意味です。 表内で固定させる (<td></td>の中に style="background-image:url(○○.gif); background-position : 100% 100% ; background-repeat : no-repeat;" を入れるという意味) なら表示されるのですが、 <td background="○○"></td> なら反映されなくて、全体の固定画像が表示されます。 表内に色をつける(<td bgcolor="#0000a0">) ことはできます。

  • yasite
  • ベストアンサー率50% (8/16)
回答No.1

ソースに間違いは無いです。実際のソースでは</style>で閉じていますよね? 表の背景画像というのはTABLE要素を使っているということなのでしょうか? ---引用--- BODY{ background-image : url(○○.jpg); background-repeat : no-repeat; background-attachment : fixed; background-position : 90% 50%; } ---------- 上記のソースのBODYをTABLEに書きかえるだけで表にも背景画像が使われることになります。 ちなみにCSS(スタイルシート)では、背景に画像を指定した場合、画像に近い色を background-color で指定しておいたほうが無難です。 参考になれば幸いです。

noname#10796
質問者

お礼

ご回答ありがとうございます。 上記のように背景画像を固定しちゃうと <table align="left" height="440" width="400" border="2" cellspacing="0" cellpadding="2"> <th height="15" align="center" valign="middle" background="○○.gif" rowspan="11"> の○○.gifがなくなっちゃうんです。 そういうもんなんですか?