- ベストアンサー
均等な空白部分をつくるには?
htmlで例のように表示したいのですが 例)「 数量 金額」 「 12 1,234」 のように桁位置を合わせたく思います。つまり、数字の最下位桁と見出しの最下位桁を同じ位置にしたいのです。 ところが、漢字スペースを入れても実際はくっついてしまい「123,456」のようにWeb表示されてしまいます。 半角スペースでも同様にくっついてしまいます。 たとえば「ESC」コードのようなスペースのように見える文字をスペース代わりに挿入することで可能になるのでしょうけど、どのようなコードがいいでしょうか?なにかいいアイデアはあるでしょうか?
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
いまいち何をやりたいのかわかりませんが、 <pre></pre>でインデントしたい部分を囲んでみてはいかが?
その他の回答 (4)
- steel_gray
- ベストアンサー率66% (1052/1578)
空白文字は構造の区切り(データの区切り)であって、何個も続けたところで一つと同じに扱われます。(プログラムのソースコード中、文字列内以外の場所でtabや空白を何個いれても実行結果に影響しないのと同じ) 対処は3種類(全て既出です) 1)空白を一つづつ に置き換える。( は視覚化されるのでレイアウトにも使える。) 2)preで囲う。preは「空白」や「改行」をそのままレンダリングに反映させる。(桁合わせをするなら等幅フォントも指定) <pre style="font-family:monospace">__数量_____金額(改行) __12__1,234</pre> monospaceというのはブラウザに設定されている等幅フォントを使いなさいという意味で、「MSゴシック」を指定するよりも柔軟で的確です。 3)tableとしてマークアップする。 簡単なのは#2(改行も反映されるので余計な場所で改行したりbrを余計に入れると崩れます) HTMLをマジメに扱うのであれば(表に見えるので)たぶん#3です。 preで逃げているとすぐに壁にぶち当たるのでちゃんとHTMLを学びtable化する事をお勧めします。
お礼
ありがとうございます。 試してみます。
- kuzumiHK
- ベストアンサー率72% (132/183)
内容を見ると表的な要素ですので間にタグを挿入できるのであれば、 ANo.2さんがおっしゃるようにtableが理想だと思います。 例えば、word-spacingなら空白を調整することが可能ですが、 いかがでしょうか。 <p style="word-spacing:3em"> 数量 金額<br> 1235 111456 </p>
お礼
ありがとうございます。 試してみます。
- yambejp
- ベストアンサー率51% (3827/7415)
それではmonospaceをつかってみてください。 <div style="font-family:monospace"> 数量 金額<br> 12 1,234 </div>
お礼
ありがとうございます。 このように書きましたが <div style="font-family:monospace"> <p align="left"> 数量 金額<br> 1235 111456 </div> 数量 金額 1235 111456 こんな漢字に表示されてしまします。
補足
お礼の訂正です。 ありがとうございます。 <div style="font-family:monospace"> <p align="left"> ____数量_________金額<br> ____1235_______111456 </div> のように書きましたが(_はスペースの意) 数量 金額 1235 111456 のようになります。
- nda23
- ベストアンサー率54% (777/1415)
HTMLでは空白を と記述していますか? もっとも、プロポーショナルフォントでは空白で間合いを取るのは 絶望的です。そこで、位置合わせなら、<TABLE>タグを使う方が よいでしょう。 <TABLE> <TR> <TH ALIGN=RIGHT>数量</TH> <TH ALIGN=RIGHT>金額</TH> </TR> <TR> <TD ALIGN=RIGHT>12</TD> <TD ALIGN=RIGHT>1,234</TD> </TR> </TABLE>
お礼
ありがとうございます。 を使わずにお願いします。 なぜ、このような質問をするかといいますと「COBOL」でhtmlというテキストファイルを出力するのですが、この場合、タイトル部は 「____数量______金額」とし(_はスペースの意)、 「ZZZZ,ZZ9ZZ,ZZZ,ZZ9」のように編集エリアを定義しますが、この時 12と1234の場合、 「______12_____1,234」となりますが、 この場合Webでは 「121,234」と表示されてしましますので。。 ちなみに文字種類は「MSゴシック」にしています。(プロポーショナルでは無い)
お礼
すみません。 質問にあやまりがあり、 例)「 数量 金額」 「 12 1,234」 ------- ところが、漢字スペースを入れても実際はくっついてしまい「121,234」のようにWeb表示されてしまいます。 半角スペースでも同様にくっついてしまいます。 たとえば「ESC」コードのようなスペースのように見える文字をスペース代わりに挿入することで可能になるのでしょうけど、どのようなコードがいいでしょうか?なにかいいアイデアはあるでしょうか? でした。 回答ありがとうございます。 <pre></pre>で囲めば、見た目に表示されるのでしょうか。 試してみます。
補足
ありがとうございます。 試してみましたが「表示」がなぜかぐちゃぐちゃになってしまいました。 使い方があやまっているのでしょうか?