• ベストアンサー

&nbspで空白を入れたいのですが、文字間隔がおかしい

htmlで文字列を整形したいです。 12345,67890 12345<5文字空白>67890 というような感じです。 で&nbsp;というのがあるということで 12345&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;67890 としてみました。 ところが&nbspを5個いれても5文字にならないようです。 ためしに以下のようにやってみました。 123456789<br> 1&nbsp;&nbsp;456789<br> やっぱり変です。&nbspは半角の半分???なのでしょうか。 半角の空白を決めた数入れる方法を、ほかの方法でも良いので教えてください。

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

  • ベストアンサー
  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.2

等幅のフォントを指定する必要があります。 例えば <div style="font-family:monospace"> 123456789<br> 1&nbsp;&nbsp;456789<br> </div> とかしてみて下さい。

azicyan
質問者

お礼

わざわざ具体例をありがとうございます。

その他の回答 (2)

noname#22222
noname#22222
回答No.3

全角ブランクを使えばある程度はカバーできますが、奇数バイトですと半角ブランクが1個入るますので多少狭くまります。完全に制御するには、No1さんの言われるように非プロポーショナル文字(MS ゴジック、MS 明朝)を使うか文書整形機能を使うしかありません。

azicyan
質問者

お礼

回答ありがとうございます。 文書整形というとテーブル化何かで、ということでしょうか。

  • Trick--o--
  • ベストアンサー率20% (413/2034)
回答No.1

ちゃんと空白文字は入っています。 ただ、フォントによっては文字に応じて幅を変えるので、思うように表示されないのです。 日本語だと、頭にPのつくフォントがそうなので、それ以外のフォントを指定してみてください。 検索キーワード:プロポーショナルフォント

azicyan
質問者

お礼

フォントを変えないといけないんですね。 そこのところが変更OKかどうかわからないのですが、 とりあえず理由がわかりました。 ありがとうございます。

関連するQ&A