16.テーブルとスタイルシート
  テーブルをホームページのデザイン(レイアウト)に使うのは、ごく普通になってきていますが、
 以下のような問題があります。
 1)日本語(全角文字)と英語(半角文字)の自動改行の違い。
   <html>
   <head>
   <title>テーブルの日本語(全角文字)と英語(半角文字)の自動改行の違い。</title>
   </head>
    <body> 
    <table border="1">
    <tr>
    <td>今日は、少し天気悪るそうですね。梅雨は、うっとしいですね。</td>
    </tr>
    <tr>
    <td>012345678901234567890123456789</td>
    </tr>
    </table>
    </body>
    </html>
今日は、少し天気悪るそうですね。梅雨は、うっとしいですね。
012345678901234567890123456789
   ブラウザの横サイズを小さくしてみてください。日本語が自動改行して表の型崩れが発生します。
   日本語の自動改行をさせないためには、以下のような所に注意します。

  2)テーブルの幅(セルの幅)を固定にする。
   <html>
   <head>
   <title>テーブルの日本語(全角文字)と英語(半角文字)の自動改行の違い。</title>
   </head>
    <body> 
   <table border="1" width="450">
   <tr>
   <td width="450">今日は、少し天気悪るそうですね。梅雨は、うっとしいですね。</td>
   </tr>
   <tr>
   <td>012345678901234567890123456789</td>
   </tr>
   </table>
    </body>
    </html>
今日は、少し天気悪るそうですね。梅雨は、うっとしいですね。
012345678901234567890123456789


 3)テーブルの幅(セルの幅)を固定せずにセルに自動改行禁止属性(nowrap)を書く。
   <html>
   <head>
   <title>テーブルの日本語(全角文字)と英語(半角文字)の自動改行の違い。</title>
   </head>
    <body> 
   <table border="1">
   <tr>
   <td nowrap>今日は、少し天気悪るそうですね。梅雨は、うっとしいですね。</td>
   </tr>
   <tr>
   <td>012345678901234567890123456789</td>
   </tr>
   </table>
    </body>
    </html>
今日は、少し天気悪るそうですね。梅雨は、うっとしいですね。
012345678901234567890123456789

  4)文字サイズによる型崩れ。

さる公園たちのサルです。 天気もよくのどかな一日です。 仲よさそうな二匹ですね。ん~
文字サイズにより、文書が自動改行してしまう。
さる公園たちのサルです。 天気もよくのどかな一日です。 仲よさそうな二匹ですね。ん~
改行禁止すると、表の幅が 変わってしまう。(赤色の部分)
    ブラウザ上でいろいろ文字サイズを変えてみてください。
    表のかたく擦れが発生します。
    テーブルを使ってホームページデザインをする場合は、以上のような問題が発生します。
    これをスタイルシートを使って改善します。

  5)テーブル全体にスタイルシートを適用する。
    <書式><table border="1" class="alltable" >
今日は、少し天気悪るそうですね KyouWaSukoshiTenkiWarusoudesune.
   

 6)テーブルに行単位でスタイルシートを適用する。
   <書式><table border="1">
         <tr class="rowtable">
         <td .....
今日は、少し天気悪るそうですね。 KyouWaSukoshiTenkiWarusoudesune.
   

 7)セル単位にスタイルシートを適用する。
   <書式><table border="1">
         <tr>
         <td class="tablesell1">今日は、少し天気悪るそうですね。</td>
         <td class="tablesell2">KyouWaSukoshiTenkiWarusoudesune.</td>
          </tr>
          <tr .......
今日は、少し天気悪るそうですね。 KyouWaSukoshiTenkiWarusoudesune.
   

  8)スタイルシートのボーダーをテーブルのボーダーの様にする。
   <html>
   <head>
    <title>ボーダー枠を一括で指定する。</title>
    <style type="text/css">
    <!--
     .border1 {
           border: medium ridge #FF0000;
     }
      .border2 {
           border-top-width: medium;
           border-right-width: medium;
           border-bottom-width: medium;
           border-top-style: ridge;
           border-right-style: ridge;
           border-bottom-style: ridge;
           border-top-color: #FF0000;
           border-right-color: #FF0000;
           border-bottom-color: #FF0000;
     }
     .border3 {
           border-right-width: medium;
           border-right-style: ridge;
           border-right-color: #FF0000;
           border-bottom-width: medium;
           border-left-width: medium;
           border-bottom-style: ridge;
           border-left-style: ridge;
           border-bottom-color: #FF0000;
           border-left-color: #FF0000;
     }
     .border4 {
           border-right-width: medium;
           border-bottom-width: medium;
           border-right-style: ridge;
           border-bottom-style: ridge;
           border-right-color: #FF0000;
           border-bottom-color: #FF0000;
     }
    -->
    </style>
    </head>
    <body>
    <table width="562" border="1">
    <tr>
    <td width="274" height="21" class="border1">&nbsp;</td>
    <td width="272" class="border2">&nbsp;</td>
    </tr>
    <tr>
    <td class="border3">&nbsp;</td>
    <td class="border4">&nbsp;</td>
    </tr>
    </table>
    </body>
    </html>
   
   

 上テーブルは、テーブルのボーダーが表示されているので表示しないようにする。 → border="0" にする。
 表示しないようにしても隙間があるので隙間をなくす。 →  cellspacing="0" を追加する。
    <table width="562" border="0" cellspacing="0">
    <tr>
    <td width="274" height="21" class="border1">&nbsp;</td>
    <td width="272" class="border2">&nbsp;</td>
    </tr>
    <tr>
    <td class="border3">&nbsp;</td>
    <td class="border4">&nbsp;</td>
    </tr>
    </table>

   
   


 <課題1> 5)、6)、7)のスタイルシートをやって見なさい。(設定は、自由)
 <課題2>4)の欠点をスタイルシートを使って改善しなさい。
 <課題3>次のテーブルをスタイルシートを使ってデザインしなさい。(設定は、自由)
       テーブルは、2行2列の表になっている。
さる公園たちのサルです。
天気もよくのどかな一日です。

 <課題4>テーブル全体を左から50ピクセルほど離れた所に配置しなさい。
さる公園たちのサルです。
天気もよくのどかな一日です。