• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ol要素で思い通りに表示できないです。 )

ol要素で思い通りに表示できない?

このQ&Aのポイント
  • Google ChromeとFirefoxで<ol>要素の番号と文字の間に空白ができるが、IEやOperaではできない。空白をなくす方法は?
  • <ol>要素内のリストの文字の自動改行で、改行された2行目の文字が一行目の文字よりも左側に表示されてしまう。一行目と同じ位置で改行させる方法は?
  • ホームページ作成中に遭遇した問題の2点。1つは<ol>要素で空白ができるかどうか、もう1つはリストの文字の自動改行の位置に関する問題。解決方法を教えてほしい。

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

  • ベストアンサー
  • mitoneko
  • ベストアンサー率58% (469/798)
回答No.2

 CSSを何も指定しなくても、とりあえず、適当な余白で適当な行間で適当なフォントサイズで表示されますよね。  この「適当」はブラウザによって違います。  このため、CSSで、ちゃんとレイアウトをするためには、とりあえず、このデフォルトの指定をちゃんと自分でやってあげるのが基本です。  結構な量のCSSを指定する必要がありますが、次のページにあるreset.cssを最初に指定してください。少なくとも、ブラウザのデフォルト指定による差は吸収できます。自分の好みがあるなら、これをベースに修正して、何はともあれ最初に指定するようにすると良いでしょう。  http://developer.yahoo.com/yui/reset/  ダウンロードのリンクで落としたファイルのbuildフォルダーの中にresetフォルダーがあります。ここに入っています。

arigatou12
質問者

お礼

早速のご回答をありがとうございます。 なるほど! 私は自分でreset.cssを作っていました。 このリンク先でダウンロードできるreset.cssは、様々なブラウザの差がなくなるように あらかじめ設定されているリセットのスタイルシートということですよね。 ありがとうございました。早速使ってみたいと思います!

arigatou12
質問者

補足

度々のコメントで申し訳ございません。 上記方法を試した所、表示が変わらなかったため再びお力を借りたく 再度コメントさせていただきました。 <実行した事> 上記ホームページからダウンロードし、resetフォルダにある 「reset.css」と「reset-min.css」の両方をアップロードし、 A.htmlファイル(上記画像のhtmlファイル)にて2つのcssファイルの アドレスを指定しました。 するとリストの番号がresetされて消えてしまったため、 A.htmlファイル専用のA.cssのliに「list-style-type: decimal;」を指定しました。 すると再びリストの番号は表示されたのですが、上記の画像と同じ位置に また表示されてしまいました。 他にどういった原因が考えられるのでしょうか?

その他の回答 (2)

  • tracer
  • ベストアンサー率41% (255/621)
回答No.3

この質問内容は非常によく耳にすることですが、同時にとても深いお話です。 reset.cssについては一理ありますが、それ以外にも、どのブラウザで、どのバージョンで、ドキュメントスイッチは何を使っていて、htmlのバージョンが何か・・・とか面倒な話になります。それぞれに指定方法が異なるのです。 ひとまず、質問される前に検索サイトやリファレンスで調べられましたか? 私の一見したところ、Googleで「css ol」を検索すると、まんまの答えがたくさん出てきますよ。 調べた結果、わからない箇所だけを質問されたほうが、回答がつきやすいと思いますし、ご自身の学習にも役立つと思います。

arigatou12
質問者

お礼

お礼が遅れまして申し訳ございませんでした。 調べた上で質問させていただいたのですが、調べが足りなかったと反省しております。 もう一度しっかり調べなおしてみたいと思います。 ご回答ありがとうございました。

arigatou12
質問者

補足

お世話になっております。 list-style-positionをinsideに指定する事によってブラウザ間の差がなくなりました。 この度は色々と知恵をお貸しいただきありがとうございました。

noname#120742
noname#120742
回答No.1

ブラウザによって、デフォルトのマージンなどが異なるために そのようなことが常に発生済ます。 その対策としては、CSSのリセットを最初に入れて、 から、位置調整します。 基本的事項です。 /*すべてに適用すべきリセット*/ * { margin:0; padding:0; } /*位置調整*/ ol { padding:xxxpx; } ようにしていますか?

arigatou12
質問者

お礼

早速のご回答ありがとうございます。 reset.cssは本で読んだとおりに下記のように設定していました。 --------------------------------- @charset "utf-8"; html,body,div,h1,h2,h3,h4,h5,h6, p,address,ul,ol,li,dl,dt,dd, table,th,td,form { margin: 0; padding: 0; border: 0; } --------------------------------- 今回のご指摘どおりにするために上記内容を下記に変更を しましたが、表示に変化はありませんでした。 ---------------------------------------- /*すべてに適用すべきリセット*/ * { margin: 0; padding: 0; } /*位置調整*/ ol { margin: 0px; padding: 0px; } li { margin: 0px; padding: 0px; } ----------------------------------------- marginとpaddingをマイナスにしたり増やしたりしましたが変化はありませんでした。 何か他に原因があるのでしょうか?

関連するQ&A