• ベストアンサー

ページ内のテーブルにのみ等幅フォントを適用する方法

ホームページ製作にあたり、スタイルシートを使用して、テーブルの中はプロポーショナルフォント、その中のテーブルのみ小数点をそろえるたみに等幅フォントにしたいのですが、 以下のように設定すると、テーブルの中全てに等幅フォントが適用されてしまいます。 td {font-family:monospace;} テーブルの中のテーブルにのみ適用するにはどうしたらいいでしょうか?

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

  • ベストアンサー
  • steel_gray
  • ベストアンサー率66% (1052/1578)
回答No.1

> テーブルの中のテーブルにのみ table table {font-family:monospace;} 参考URL ただ、どらかというと該当の箇所にクラスを付与した方が扱いやすくなると思います。 例(スタイル部分) .numdata{font-family:monospace;} 例(HTML部分) <table> <tbody class="numdata"> <tr><td>数値・・・・・ </tbody> <tbody> <td>数値以外・・・・・ または <table class="numdata"> <tr><td>数値・・・・・ あるいは <table> <tr><td class="numdata">数値・・・・・ <tr><td class="numdata">数値・・・・・ <tr><td>数値以外・・・・・

参考URL:
http://hp.vector.co.jp/authors/VA022006/css/selector.html#descendant-selectors
noname#20839
質問者

お礼

的確なお答えありがとうございました。 助かりました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • スタイルシートでの等幅フォントの種類

    社のホームページを作成しております。 ターゲットをWindowsおよびMacintoshのInternetExplorerとすることに決定したのですが、スタイルシートによる等幅フォントの指定で困っております。 現在は”MS ゴシック”を指定しているのですが、これではMacintoshではうまくないような気がします。 Macintoshが身近にないため、確認することもままなりません。 Macintoshでの等幅フォントには何を指定すればよいのでしょうか? よろしくお願い致します。

  • tdの中のtableの中のtd

    .box{~~} という具合にfont-sizeやline-heightを スタイルシートで定義しています。 あるtdの中に<td class="box">で そのスタイルを適用させるまではいいのですが、 そのtdの中にさらにtableを作った場合、 その中にはboxスタイルが適用されません。 入れ子になっている影響かな?とは思うのですが、 この場合、どう指定したらよいのでしょうか。 すべてのtdにclass指定するのは避けたいです。

    • ベストアンサー
    • HTML
  • スタイルシート テーブル内のフォントサイズの設定

    スタイルシートを勉強しているんですが、テーブルが複数またはテーブル内にテーブルが複数という状況では、フォントサイズの指定はどうしたら良いのでしょうか? 単純に指定した場合、テーブル内はサイズ反映されないのでtd,trと指定してすれば全てに適用する訳ではないのでしょうか? よろしくお願いします。

    • ベストアンサー
    • HTML
  • 全角半角含めて等幅で表示したい

    文字の等幅表示で困っています。 例えば次のような文で、右端の「|」が揃うようにしたいのですが、うまくいきません。 1234567812345678| llllMMMMIIIIAAAA| MMMMMMMM漢字AAAA| IIIIIIII| MMM<B>MM</B>MMM漢字AAAA| MMM<a href="">MM</a>MMM漢字AAAA| <tt>、<pre>、font-familyで等幅のフォントやmonospaceを選択しても、全角文字が半角文字より少し小さくなったりします。 IE6だけでも良いので揃えたいのですが、有効な方法をご存じの方がいらっしゃいましたら教えて下さい。

    • ベストアンサー
    • HTML
  • テーブルだらけのページをスッキリさせたい

    いま、ホームページビルダーで趣味のサイトを作っているところなのですが、 HTMLのことでわからない事があるので教えてください。 現在、大きなテーブルの中にさらに小さなテーブルをいれています。 そのためタグがとてもごちゃごちゃしています。 小さなテーブルはサイト更新の度に追加していく予定なので、 見た目よりデータが重いページになってしまうと思います。 これをなんとかスッキリさせたいのですが 良い方法はあるでしょうか? スタイルシートを使えばいいのでしょうか? どのように使用すれば無駄の無い形になるか 具体的なアドバイスをいただけると助かります。 参考までに作りかけのタグを載せました。 悪い部分等があったら、ぜひお願いします。 よろしくお願いします。 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <HTML> <HEAD> <META http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <META http-equiv="Content-Style-Type" content="text/css"> <TITLE>サイト名「タイトル未定」</TITLE> </HEAD> <BODY> <CENTER> <TABLE border="0" cellpadding="0" cellspacing="0" width="840"> <TBODY> <TR> <TD colspan="2" align="center" height="40">サイト名 タイトル</TD> </TR> <TR> <TD colspan="2" align="center">サイトの説明と注意事項</TD> </TR> <TR> <TD colspan="2" height="15"> <HR> </TD> </TR> <TR> <TD align="center"> <TABLE border="1" cellpadding="2" cellspacing="1" bordercolor="#000000"> <TBODY> <TR> <TD rowspan="3" width="100" height="100" align="center" bgcolor="#009900">花の写真</TD> <TD width="80"><FONT size="-1">花の名前</FONT></TD> <TD width="150"><FONT size="-1">チューリップ</FONT></TD> </TR> <TR> <TD width="80"><FONT size="-1">分類</FONT></TD> <TD width="150"><FONT size="-1">あああああ</FONT></TD> </TR> <TR> <TD width="80"><FONT size="-1">撮影日</FONT></TD> <TD width="150"><FONT size="-1">2008年4月1日</FONT></TD> </TR> <TR> <TD colspan="3" height="80"><FONT size="-1">花の特徴など<BR> あああああああああああああああああああ<BR> いいいいいいいいいいいいいいいいいいいいいいいい<BR> うううううううううううううううううううううううう。</FONT></TD> </TR> </TBODY> </TABLE> <BR> </TD> <TD align="center"> <TABLE border="1" cellpadding="2" cellspacing="1" bordercolor="#000000"> <TBODY> <TR> <TD rowspan="3" width="100" height="100" align="center" bgcolor="#999900">花の写真</TD> <TD width="80"><FONT size="-1">花の名前</FONT></TD> <TD width="150"><FONT size="-1">さくら</FONT></TD> </TR> <TR> <TD width="80"><FONT size="-1">分類</FONT></TD> <TD width="150"><FONT size="-1">あああああ</FONT></TD> </TR> <TR> <TD width="80"><FONT size="-1">撮影日</FONT></TD> <TD width="150"><FONT size="-1">2008年4月2日</FONT></TD> </TR> <TR> <TD colspan="3" height="80"><FONT size="-1">花の特徴など<BR> あああああああああああああああああああ<BR> いいいいいいいいいいいいいいいいいいいいいいいい<BR> うううううううううううううううううううううううう。</FONT></TD> </TR> </TBODY> </TABLE> <BR> </TD> </TR> <TR> <TD align="center"></TD> <TD align="center"></TD> </TR> <TR> <TD colspan="2"> <HR> </TD> </TR> </TBODY> </TABLE> </CENTER> </BODY> </HTML>

  • クラス内のテーブルが全体に適用される

    .maintable TABLE, TD, TH { border: 2px #7d9ba4 dotted; border-collapse: collapse; padding: 5px; } 上記の記述を外部スタイルシートにて適用させているのですが、このテーブルの設定が、全体に適用されて困っています。 maintableクラス内のみの適用になると思っていたのですが、違うのでしょうか? .maintable LI { list-style-image: url(image/p008_11.gif); } 同じくこのような記述は、maintableクラス内のみにきちんと適用されているので、同じ要領かと思っていたのですが。 私の誤認でしたら、.maintableクラス内にのみ適用できるテーブルのスタイルの記入の仕方を教えていただきたいです。 よろしくお願いいたします。

    • ベストアンサー
    • HTML
  • operaだとテーブルがなくなります

    operaだテーブルがなくなります IEだと問題なく表示されるのに だれか助けてください style.css    body{background-color:#ffff99;margin:0px; font-size:large; font-family:"HG正楷書体-PRO","HG行書体","HGP行書体",cursive} .cur{font-family:cursive} .ser{font-family:serif} } table{background-color:#ff9933;  width:100%; height:10%    }   .midori{background-color:#999933; width:100%; height:3.3%  }        htmlのほうは <HTML> <HEAD> <TITLE></TITLE> <link href="style.css" rel="stylesheet" type="text/css"> </HEAD> <BODY> <table><tr ><td></td></tr></table> <table class="midori"> <tr ><td></td></tr></table> <table style="height:6.7%"> <tr ><td></td></tr></table> <table style="position:absolute; left: 0px; bottom:8%; width:8%; height:100%; background-color:#993300"> <tr ><td></td></tr></table> <table style="position:absolute; bottom:0; height=8% " class="midori"> <tr ><td></td></tr></table> </BODY> </HTML> こんな感じなのですが どうしてでしょうか

    • ベストアンサー
    • HTML
  • スタイルシート、ネスケで基本のフォントサイズが適用されない

    スタイルシートを外部ファイルとして呼び出して、スタイルを下記の様に指定しました。 <style type="text/css"> <!-- body{font-size:13px;} table{font-size:13px;} --> </style> IEではページ全体のテキスト、テーブル内のテキストともに13pxで表示されるのですが、ネスケだとテーブル内の13pxは適用されてもページ全体のテキストに13pxが適用されません。emや%といった単位や相対・絶対値の違いではないと思うのですが、ネスケのページ全体のテキストの指定には他に記述があるのでしょうか? できればスタイルシート1つでIEでもネスケでもある程度同じに見えるようにしたいのですが…お願いします。

    • ベストアンサー
    • HTML
  • thのスタイルを適用するにはどうすればいいでしょう

    <table border=1 class="test1"> の部分にclassを設定するだけで thのスタイルを適用するにはどうすればいいでしょうか? 理想としては添付画像の下のテーブルの様に thの部分だけスタイルを適用したいのですが 実際はテーブルのレコード数が多い為、 <th class="test2">を全てのthにつけるのを省略したいです。 なので、<table border=1 class="test1">の部分にthのスタイルを設定したいのですが table.test1 {font-size: 5em;} の部分はどのように記述すればいいでしょうか? 現在の table.test1 {font-size: 5em;} だとテーブルすべてに適用されてしまいます。 理想の表示は下のテーブルで 理想のソースは上のテーブルです。 ------------------ 以下ソース <html> <head> <style type="text/css"> table.test1 {font-size: 5em;} th.test2 {font-size: 5em;} </style> </head> <body> <table border=1 class="test1"> <tr><th>No</th><td>a</td></tr> <tr><th>No</th><td>a</td></tr> </table> <br> <table border=1> <tr><th class="test2">No</th><td>a</td></tr> <tr><th class="test2">No</th><td>a</td></tr> </table> </body> </html>

    • ベストアンサー
    • CSS
  • tableに対するdiv

    テーブル内の文字色を白にしたい場合、 <style type="text/css"><!-- div.font{color:white;} --></style> <tr> <div class="font"> <td align="center" width="20%">★1</td> <td align="center" width="20%">★2</td> <td align="center" width="20%">★3</td> <td align="center" width="20%">★4</td> <td align="center" width="20%">★5</td> </div> </tr> このように指定しましたが、適用されません。 なぜでしょう?

    • ベストアンサー
    • HTML