• ベストアンサー

HTMLで全角文字と半角文字を2:1で表示させる方法について。

HTMLで全角文字と半角文字を2:1で表示させる方法について。 お世話になります。 とある業務でいままで自前で描画していた画面をHTMLで表示することになりました。 この際実際に表示すると半角文字が全角の1/2より大きいため画面にズレが出てしまいます。 HTMLの記述(CSSを利用しても可)で全角文字と半角文字を2:1にすることはできますでしょうか? 出来るのであればサンプルを提示いただけると助かります。 以上、よろしくお願いいたします。

  • HTML
  • 回答数3
  • ありがとう数3

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

  • ベストアンサー
  • ORUKA1951
  • ベストアンサー率45% (5062/11036)
回答No.3

なら、 >etter-spacing:0.1em;  をetter-spacing:0em;にしたら???  半角だと文字数が増えるので、当然etter-spacingを合計した値は大きくなる。  ですが、できれば、そんなことに影響されないようページ作りをしてください。

mizeruin
質問者

お礼

letter-spacingに目がいっていませんでした。 詳しいご説明ありがとうございます。 仕様上なぜletter-spacingが入っていたのかを確認しないといけませんが、確かにズレはなくなりました。 つまらない質問に詳しく答えていただきありがとうございました。

その他の回答 (2)

  • ORUKA1951
  • ベストアンサー率45% (5062/11036)
回答No.2

>とある業務でいままで自前で描画していた画面をHTMLで表示することになりました。  ということは、その時点でフォントには関わらず情報が伝えられることを意図しているのですよ。  スタイルシートで、font^family:"MS明朝","細明朝体",monospace;の様に指定すると、等幅フォンドで表示されます。  しかし、スタイルシートと言えどもユーザー優先です ユーザ定義の最重要宣言>文書作成者の最重要宣言>文書作成者の通常宣言>ユーザの通常宣言>デフォルトの通常宣言 値の割り当て、カスケード処理、継承 ( http://www.swlab.it.okayama-u.ac.jp/man/rec-css2/cascade.html#cascading-order )  また、ユーザーが視覚障害がある場合、Ctrl + +などでフォントのサイズは自由に変更されます。  なぜ、そうなっているかというと、最大のHTMLの目的が 【引用】____________ここから HTMLは、どんな環境からもWebの情報を利用できるようにすべきだという方針の下に開発されている。例えば、様々な解像度や色深度のグラフィックディスプレイを持つPCや、携帯電話、モバイル機器、音声入出力機器、帯域が広いコンピュータや狭いコンピュータ、等の環境である。  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ここまで[Introduction to HTML 4 (ja)( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/intro/intro.html#h-2.2.1 )]より  だからです。  もし、作者の期待したイメージどおりに表示させたいのなら、HTMLではなくPDFなど他の手段を考えるべきです。  HTMLは、利用者がどのようなフォントを使おうが、どの大きさの文字で見ようが、そもそも表示させずに機械(読み上げブラウザ)に読ませようが、情報を伝えるために【HTMLで作成する】のです。そのための物であって、【自前で描画していた画面をHTMLで表示する】ためのものではないのです。    

mizeruin
質問者

補足

HTMLに関する詳しい説明ありがとうございます。 今回の業務ではユーザーサイドでの強制的なCSS変更等は行わないことが前提であるということを書いておりませんでした。 (もともとの業務では独自のUIを使っており、今回その定義ファイルからHTMLを作成し、表示させるというものです。フィールド入力もあります。) 今回、以下の様にフォントを指定してHTML出力しているのですが、期待に反して半角文字の方が少々横幅が大きく取られてしまっています。(全てMSゴシックにて作っているのでズレ自体は一定です) ---- <font style="position:absolute; top:75px; left:280px; z-index:24; letter-spacing:0.1em; font-size:medium; font-family:'MS ゴシック';">1:あああああ 2:あいうえコード</font> ---- 上記と縦方向だけをずらして同じフォントで全角のみを出力すると半角二文字の方が全角一文字より横幅が大きくなっております。 何か誤った点でもありますでしょうか?

  • uriboar
  • ベストアンサー率15% (143/916)
回答No.1

CSSにて等幅フォントを指定すればOKです。 ただし、大抵のブラウザには、サイト指定のスタイルを無視して、ユーザが指定したものを優先させる設定があるので、結局のところ、ユーザの設定次第ということになります。

参考URL:
http://www.htmq.com/style/font-family.shtml

関連するQ&A

  • 全角文字を半角に変換する

    全角文字を半角へ、またはその半角文字を全角にする 関数もしくは処理がありましたら教えていただきたいの ですが、宜しくお願い致します。 また変換する文字はアルファベットと数字で、漢字とかが 入力されたらエラー表示させる例を提示していただけると たいへんありがたいです。

  • 半角文字と全角文字の判別の仕方

    MFCです。 テキストファイルから読み込んだ文字を一定の文字数づつウィンドウに書き込もうとしています。 例えば10文字を一行として 10文字 10文字 10文字 ・ ・ ・ という感じで表示したいのですが、テキストファイルには半角文字と全角文字が混じっています。半角だけなら10バイトごとに表示すればいいと思いますが、半角も全角も一文字としてカウントしようとすると半角か全角かを判別してからカウントしなければならないと思うのですが、何か良い方法ありませんか? よろしくお願いします。

  • HPを作るにおいて全角・半角は関係ないですか?

    ヤフージオシティーズで携帯用(DOCOMO)のHPを作成しています。 (CSSは知識がないため使えないです) このとき、英数字や記号は全角の方がいいでしょうか? 半角だと文字化けするかも?と思い全角にしていましたが うっかり半角で表記した英数字も問題なく表示できました。 HPを作るにおいて全角・半角は関係ないですか? 何かわかる方よろしくお願いします。

    • ベストアンサー
    • HTML
  • 文章中の英文字のパソコン用語は全角、半角どちらがいいでしょうか?

    文章中の英文字のパソコン用語(例えばInternet、DRM、HTMLなど)は全角、半角どちらがいいでしょうか? 実際に業務で統一されている事などありましたら、教えていただけると嬉しいです。

  • バッチファイル内に含まれる全角文字を,エンコードしてすべて半角文字で記

    バッチファイル内に含まれる全角文字を,エンコードしてすべて半角文字で記述する事はできないでしょうか。漢字等を,依存文字を含まないASCII文字であらわしたいのです。HTMLでいうHTMLエンティティのように……。 ただしエンコードされた文字列をコマンドでデコードするというような面倒な処理過程があっても結構です。

  • HTMLの記述は半角大文字でもいいのでしょうか?

    ホームページ作成言語のHTMLを記述する際、アルファベットが半角であれば、大文字でも小文字でも結果は変わらないようです。 大文字小文字どちらを使ってもよろしいのでしょうか? 何らかの法則みたいなものがあるのでしょうか?

  • 全角・半角

     日本語入力しようと全角・半角のキーを、押すと全角の「あ」半角の [ A]が重なって、文字が打てなく成ります。 こうなった時は,たいてい閉じるを、クリックすると。 「問題が発生しました。インターネット エクスプローラを、終了します」と表示されます。 いつもシャットダウンして、再起動してます。 どうしたら良いのでしょう。お願いします。  

  • エクセル2003で、1つのセルに全角文字、半角文字

    エクセルで文字数制限のあるセルに 全角、半角文字が混在している場合 A1 上下ABCDひだりみぎ ←対象となるセル B1全角文字数 7 C1半角文字数 4 というように対象のセルの全角文字数、半角文字数を別々のセルに表示できる方法があれば おしえてください。

  • 半角/全角文字混在データの分割方法

    VB6.0にて、あるデータ項目の内容を、画面上の2つの表示領域に分割して セットする方法を教えて下さい。 あるファイルの項目として、「住所」という項目があるとします。 このデータを取得し、画面に表示する際に、「住所1」「住所2」とに分割して、 セットします。 この場合、ファイル上の「住所」は、キャラクタタイプで40バイトと定義されており、 ”半角/全角文字混在”でデータが格納されています。 画面上の、「住所1」「住所2」はそれぞれ、20バイトとします。 この様な条件で、単純に取得したデータを2分割すると、 取得したデータが、全て半角か全角なら問題はないのですが、 例えば、1文字目が半角で、以降が全て全角文字だった場合に、 最後の全角文字がぴったり収まらなくなり、うまく表示できないように思います。 また、文字を取得する際に、使用している、Mid(MidB)関数やLen(LenB)関数も、 うまく利用できていないようです。(コード体系の違いでしょうか?) どなたかご教授下さい。 よろしくお願いします。

  • 全角、半角などの切り替えについて

     XPのパソコンを使っています。買ってから今まで文字を入力するとき画面右下に全角半角の切り替えなどのバーが出ていたのですが、数日前から消えてしまい困っています。表示や消し方などを教えていただきたいのですがどうやったらいいでしょうか?

専門家に質問してみよう