No.3ベストアンサー
- 回答日時:
中央揃えが反映されなくなったというのは、文字のセンタリングの基準位置が端に寄ってしまったという状態でしょうか。
それでしたら、divのボックス自体がセンタリングの指定をされていないので、これまでは表示領域に100%の幅で領域を確保していたdivが、幅を400pxに制限されたために、表示領域の左端を基準として幅400pxのボックスになり、その中で文字がセンタリングされている状態になっているのではないでしょうか。
試しに、bodyに対してbackground-color: black;の指定を入れて背景を黒くすると、div要素が確保している領域の背景が白色なので、確保されている領域が把握できると思います。
なお、div要素に対するwidth指定は可能ですし、有効な指定です。
とりあえず改善策としては、#2の方の挙げられているように、bodyにtext-align: centerを適用させ、それに加えてdivのスタイルシート指定にmargin: auto;を追加すればよいと思います。
従来のIEやIE6の後方互換モードでは、div要素などブロックレベル要素をセンタリングするには、その親要素でtext-align: center;を指定する必要があります。 そのため、body要素に対してtext-align: center;の指定が必要になります。 ただし、W3Cが勧告しているスタイルシートの正しい解釈としては、text-alignはブロックレベル要素には適用されませんので、IE以外のブラウザでは上記のtext-alignの指定はブロックレベル要素に効きません。
正しい解釈に近い表示法を取るブラウザ(Netscape7やIE6の標準モード)で、ブロックレベル要素をセンタリングする時には、margin: auto;を使います。 これをdiv要素のスタイルに追加すればよいでしょう。
蛇足気味ですが、margin: auto;という指定は、上下左右のマージンを自動設定するスタイルシート指定になります。 もしmargin-left: auto;という指定だけを行うと、横幅の余白領域がすべて自動的に左側のマージンに割り振られ、結果的にそのブロックレベル要素は右寄せになります。 margin-right: auto;のみの場合は、同様に余白領域がすべて自動的に右側のマージンになり、結果的に左寄せになります。 両方をautoに設定すれば、余白領域を左右で自動的に分け合い、結果的に中央寄せになります。
従来のIEと、Netscapeでの表示の共通性を確保するのであれば、この両方を追加すると良いでしょう。
参考になれば。 見当違いでしたら、ごめんなさい。
bodyにtext-ailgn:center;とmargin: auto;を併記してみたところ、(うちの)IE6とNetscape7とともに希望どおりのレイアウトになりました。
どっちのブラウザにもいい顔をしたかったので、大変助かりました。
見当違いなんてとんでもない。
非常に詳しく解りやすく、また大変的を射たご説明でした。
本当にありがとうございます。
No.2
- 回答日時:
私の環境(IE6, Opera7.23)では、指定した設定が問題なく反映されますが
どうしたもんでしょうね!?
もしかして、DIVブロックそのものを中央揃えにしたいのならば、対象となる
DIVブロックの外側に中央揃えを設定しないといけません。
<style type="text/css">
<!--
body {
text-align: center;
}
div {
width: 400px;
text-align: center;
background-color: #ffffff;
}
-->
</style>
:
<body>
<p>外側</p>
<div>
DIVブロックの中身
</div>
<p>外側</p>
</body>
</html>
bodyタグにtext-align: center;を設定したところ、うちのIEでも反映されました!
そうか、divの外側でなければならなかったのですね。
しかし、NN7では反映されませんでした。
IEとNN、どちらにもいい顔するのは本当に難しい・・・。
たいへんためになるご指摘をいただきました。
本当にありがとうございます。
No.1
- 回答日時:
Div では Width を指定できないと思います。
Tableを使ってみるのはどうでしょう。
ブラウザーの表示幅に関係なく指定した幅で表示できるのでデザインが崩れません。
外部cssで例えば下記のように定義
.sample01{
font-size:x-small;
font-weight:bold;
background:url(xxxx.jpg);
text-align:center;
}
HTMLでは
<table align=center class="sample01" width="700" border="0">
<tr><td>サンプル1</td></tr>
</table>
background:url(xxxx.jpg);では任意の画像を背景に使えます。
背景色指定の場合は次のようにします。
外部css
.sample02{
font-size:x-small;
font-weight:bold;
background-color : #00ffff;
text-align:center;
}
HTML
<table align=center class="sample02" width="700" border="0">
<tr><td>サンプル2</td></tr>
</table>
ちょっとご質問から離れているかもしれませんが、色々楽しめます。
なるほど、いろいろと楽しめますね。
既存のファイルひとつひとつにテーブルを追加していくのはちょっぴり大変ですが、レイアウトにテーブルを活用するのは便利で手軽にできてよいですね。
ご丁寧なアドバイスありがとうございます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS img と p を縦中央に配置したいのですがうまくいきません。 2 2023/01/12 14:38
- HTML・CSS HTMLで特定の文字だけ色を変えたいのですが、指定した色と違う色が反映してしまいます。 下記、「前」 5 2023/06/27 12:08
- JavaScript vertical sliderをautoplayしたい 2 2022/08/25 14:47
- HTML・CSS CSSがなぜかfont-sizeだけ効かない...記述がまちがっているんでしょうか 5 2022/04/09 17:52
- HTML・CSS テキストを画面の真ん中に配置したいです。 2 2022/11/25 16:11
- HTML・CSS CSS上での計算を行うためのルールについて教えてください。 3 2022/08/15 14:43
- HTML・CSS (Javascript)印刷するファイルに応じて印刷プレビュー画面で用紙を自動的に切り替えたい!! 2 2022/04/11 12:04
- HTML・CSS 書籍を見つつサイト造りの練習をしているのですが、見た目が一致しません 2 2022/11/28 15:00
- HTML・CSS アコーディオンメニューが思うように動作しません。 1 2023/08/20 16:48
- HTML・CSS スクロールすると追従する画像のコードを書いているのですが、追従する画像の大きさの調節が上手くいきませ 2 2022/04/18 12:52
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「諸要素」とはどういう意味で...
-
【ヒトの神秘】美男美女から何...
-
タグは大文字と小文字どちらが...
-
超音波で洗脳。
-
textareaの幅を画面と合わせたい
-
改行ほどは行かないけど、若干...
-
emとstrongの反対
-
brタグ、pタグやtableタグが非...
-
NからZへの全単射を具体的に構...
-
smallにtext-allignが効かない
-
【CSS】imgタグを、親要素の幅...
-
質問1.
-
レスポンシブサイトで、右側に...
-
エクセルでグラフにマークを入...
-
C言語線形リストの問題です
-
IEと他ブラウザでの行間について
-
ホームページの下にあるcopy ri...
-
双方向リスト
-
Bootstrap レスポンシブ textarea
-
角丸画像の背景色を透明にした...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【ヒトの神秘】美男美女から何...
-
smallにtext-allignが効かない
-
含む含まないという概念自体の...
-
還暦を過ぎた方々に質問です。
-
「諸要素」とはどういう意味で...
-
質問1.
-
textareaの幅を画面と合わせたい
-
角丸画像の背景色を透明にした...
-
2個のFormを横並びにしたい
-
テキストボックスの中にリンク...
-
HTMLです 四角みたいにして中に...
-
CSS:overflow要素の印刷について
-
input type="hidden"で取得した...
-
tdに対してmin-heightの定義、...
-
HTMLページ上でiframeを最前面...
-
タグは大文字と小文字どちらが...
-
HTMLです
-
2行にしたい要素、改行か分割...
-
改行ほどは行かないけど、若干...
-
H1タグを画像にしたい
おすすめ情報