-1

したがって、div 内にテーブルがあり、幅を指定していません。コンテンツが多いテーブルの場合、テーブルの幅が親 div の幅を超えているようです。なぜそれが起こっているのですか?テーブルの幅が常に親 div の何パーセントかになるようにするにはどうすればよいですか?

4

2 に答える 2

0

テーブルのパーセンテージ幅を設定し、CSS が他の場所で div の幅を宣言していないことを確認してください。HTML を再確認して、テーブルが適切にネストされ、div タグが閉じられていることを確認してください。このようなもの:

<!DOCTYPE html>
<html>
  <head>
    <title>Whatever</title>
  </head>
  <body>
    <div>
      <table><!--all your table stuffs--></table>
    </div>
  </body>
</html>

CSS:

div{
  width: 90%;
}

table {
  width: 90%;
}

クラスはこれに対処するためのより良い方法ですが、上記のコードは、div がページ幅の 90% であり、テーブルが div 幅の 90% であることを確認します (マージン、パディングなどを考慮して)。

于 2013-07-10T23:08:01.830 に答える
0

CSSはあなたの友達です。

<table style="table-layout:fixed">

これにより、テーブル要素がコンテンツではなく幅で最終決定権を持つようになります。

義務的なスプーン給餌の例:

<style>
#sampleTable { 
    table-layout:fixed;
    width:80%;

    background-color:#99F;
 }

#container { 
    width:500px;

    background-color:#F99;
 }
</style>

<div id="container">
    <table id="sampleTable">
        <tr><td>Exampleofreallylongtextwhichshouldbreaklayoutnormally</td></tr>
    </table>
</div>

この例では、テーブルは常に 400 ピクセル (親の 500 ピクセルの 80%) である必要があります。パディング、マージンなどの一般的な注意事項は引き続き適用されます。

また、通常はテーブルのサイズを押し出すコンテンツをどうするかを検討word-wrapし、決定することもできます。overflow

于 2013-07-10T23:08:11.173 に答える