![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
いつもお世話になっています。
CSSで枠(text_area)を作り、その背景の中央に画像表示させたいと考えています。IEでは中央に表示されるのですが、Firefoxだとtext_areaではなく画面全体の中央に配置してしまい、text_areaには一部欠けた画像が表示されます。
#text_areaに指定した内容を.contentsに書き写しても同じ状態です。
改善策をアドバイスして頂けないでしょうか?
よろしくお願いいたします。
【html】
<body>
<div class="contents">
<div id="text_area">あああああ・・・</div>
</div>
</body>
【css】
.contents{
width:760px;
height:540px;
margin:0px;
margin-right:auto;
margin-left:auto;
padding:0px;
border:0px;
}
#text_area{
overflow:auto;
width:600px;
height:395px;
margin-top:30px;
margin-left:auto;
margin-right:auto;
background-image: url(haikei.gif);/* サイズ:456×392PX */
background-repeat: no-repeat;
background-position:center;
background-attachment:fixed;
}
No.2ベストアンサー
- 回答日時:
こんな感じにすればかなりブラウザ間での差がなくなりますけど如何でしょうか?
IE を基準にしながら大雑把にやっておりますので細かい部分は適宜。
.contents{
width:760px;
height:540px;
margin:0px;
padding:0px;
border:0px;
}
.hoge{
margin-top:30px;
width:600px;
height:400px;
background-image: url(haikei.gif);/* サイズ:456×392PX */
background-repeat: no-repeat;
background-position:50% 42%;
}
#text_area {
overflow:auto;
width:600px;
height:395px;
}
<body>
<div class="contents">
<div class="hoge">
<div id="text_area">あああああ・・・</div>
</div>
</div>
</body>
詳しいご回答、ありがとうございます!
教えて頂いた方法で、IE、Firefox、Netscapeとも同様の表示ができるようになりました。
IE以外のブラウザでは、テキストエリアに直接、背景指定するのではなく、背景用の要素に指定するという考えかたになるのでしょうか?不思議な感じですが、ブラウザごとの違いということでしょうか?
勉強になります。
ありがとうございました。
No.3
- 回答日時:
>教えて頂いた方法で、IE、Firefox、Netscapeとも同様の表示ができるようになりました。
Netscape と Firefox は元を辿れば同じものです。
微妙な違いが出る場合もあるんですが、基本的にはほとんど同じ表示状態となります。
確認するなら系統が全く異なる Opera も比較対象にしたほうが良いですよ。
http://jp.opera.com/
まぁ、私が提示した事例は Opera でも確認してから載せたんですけどね。
>IE以外のブラウザでは、テキストエリアに直接、背景指定するのではなく、背景用の要素に指定するという考えかたになるのでしょうか?不思議な感じですが、ブラウザごとの違いということでしょうか?
background-attachment:fixed; の解釈が分かれたため、背景用の要素に指定しました。
互換性に配慮すると要素を重ねて CSS を指定することはしばしばです。
度々、ありがとうございます。
アドバイスして頂いたように、Operaでも同様に表示できると確認できました。
ブラウザごとの解釈の違いについては、自力では解決できなかったと思います。これから学んでいきたいとおもいます。
詳しくご説明いただき、ありがとうございました。
No.1
- 回答日時:
div,p,form などブロックレベル要素の左右 margin を auto にすると非 IE 系ブラウザではセンタリングされます。
これは Web の正しい仕様であり、text-align:center; でセンタリングを行う IE の仕様は国際規格上誤りです。
http://www.mozilla.gr.jp/standards/webtips0004.h …
…というのは問題にされてないのかも?(^^;
画面をスクロールしたときに背景画像が動く・動かないも IE のほうに問題がありそうです。
とりあえず background-attachment:fixed; をはずせば同じような感じで表示されますよ。
ご回答、ありがとうございます。
説明が不明瞭で申しわけありません。
IE、Firefoxともに、スクロールしてもtext_areaの背景は固定表示されるのですが、その位置がFirefoxだと中央よりも左下方向にずれてしまうのです(そのため、画像の一部が枠外にはみ出し、表示されません)。
ご指摘いただいたように"background-attachment:fixed;"を外したところ、Firefoxでは中央に固定表示できるようになりましたが、逆にIEではテキストと一緒にスクロールしてしまいます。
現在は、 "background-attachment:fixed;"とした上で、表示位置を%で指定していますが、"50% 50%"とするとFirefoxでは、y方向が下に進みすぎてしまうため、画面を見ながら微調整しています。これはきっと正しい指定方法ではないですよね?
【CSS変更点】
#text_area{
overflow:auto;
width:600px;
height:400px;
margin-top:30px;
margin-left:auto;
margin-right:auto;
background-image: url(haikei.gif);/* サイズ:456×392PX */
background-repeat: no-repeat;
background-position:50% 42%;
background-attachment:fixed;
}
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS 書籍を見つつサイト造りの練習をしているのですが、見た目が一致しません 2 2022/11/28 15:00
- HTML・CSS ヘッダーの画像にメインエリアがかぶってしまいます 1 2022/11/28 14:06
- JavaScript vertical sliderをautoplayしたい 2 2022/08/25 14:47
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/30 09:10
- HTML・CSS img と p を縦中央に配置したいのですがうまくいきません。 2 2023/01/12 14:38
- HTML・CSS HTML & CSS 縦ボックス内の文字の左右センタリング 3 2023/03/25 04:23
- HTML・CSS PCサイズで赤い画像2つと、青い画像2つがそれぞれ横に2つずつ並んでいるのですが、これをスマホサイズ 5 2022/04/11 12:01
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
- HTML・CSS CSSがなぜかfont-sizeだけ効かない...記述がまちがっているんでしょうか 5 2022/04/09 17:52
- HTML・CSS 吹き出し 下記の吹き出しのスタイルシートについて 下記のスタイルシートは左側にアイコンがでる使用にな 1 2022/11/12 17:55
このQ&Aに関連する記事
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
htmlの文字が縦書きになる
-
widthやheightの数値に単位(px...
-
コンボボックスの幅
-
ライトボックスでスクロールバー
-
画像イメージの上下左右、欲し...
-
【HTML&CSS】フッター下部の余...
-
余分な縦スクロールバーが出て...
-
CSS/HTML で画像 2枚重ねた上に...
-
CSSのposition値の上書き(打消...
-
表示倍率を変えるとレイアウト...
-
幅違うメニュー(リスト)、flo...
-
吹き出し 下記の吹き出しのスタ...
-
テキストボックスの高さを可変...
-
footer を横幅いっぱいに広げる...
-
form input テキストを上下中央...
-
Media Queries 4 で 非推奨とな...
-
【HTML】【CSS】【Swiper】 元...
-
cssが効かなくて困ってます
-
HTMLのiframeの入れ子について
-
CSS3で角丸写真にシャドーを付...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
htmlの文字が縦書きになる
-
widthやheightの数値に単位(px...
-
画像イメージの上下左右、欲し...
-
CSS、width100%でもできる余白
-
CSSがなぜかfont-sizeだけ効か...
-
css初心者 フレックスボックス...
-
余分な縦スクロールバーが出て...
-
CSS:animation開始位置の設定
-
form input テキストを上下中央...
-
W3Cのソースコードの検証サービ...
-
スクロールボックスを中央に配...
-
CSSでボックスのheightが0になる
-
表示倍率を変えるとレイアウト...
-
【CSS】ヘッダーの高さが不明の...
-
Media Queries 4 で 非推奨とな...
-
div領域をウインドウサイズに合...
-
CSS(0の単位)について
-
divで囲まれたpaddingの指定を...
-
中点「・」の改行について
-
CSSで指定した背景画像にリンク...
おすすめ情報