2017-06-16 5 views
2

私はhtmlとsemantic ui(下記のhtmlコードを参照)を使用してテーブルを作成しました。意味的に画面サイズが変わったときにテーブルが完全に表示されない

次の表の問題は、画面サイズが最後の列が表示されなくなるほど小さい形式に変更された場合です(下のブラウザイメージを参照してください:ヘッダー9は表示されなくなります)。また、水平スクロールも利用できません。この動作の修正はありますか?

HTML

<html> 
    <head> 
     <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0"> 
     <meta charset="utf-8" /> 

     <link href="semantic.min.css" rel="stylesheet" type="text/css" /> 

     <script type="text/javascript" src="https://code.jquery.com/jquery-3.2.1.min.js"></script> 
     <script type="text/javascript" src="semantic.min.js"></script> 
     <title></title> 
    </head> 
    <body> 
     <div class='ui container'> 
      <table class="ui striped selectable celled table" id="overviewtable"> 
       <thead> 
        <tr> 
         <th>header 1</th> 
         <th>header 2</th> 
         <th>header 3</th> 
         <th>header 4</th> 
         <th>header 5</th> 
         <th>header 6</th> 
         <th>header 7</th> 
         <th>header 8</th> 
         <th>header 9</th> 
        </tr> 
       </thead> 

       <tbody> 
        <tr> 
         <td>sdfsdqfqdsf qsfqsf qs dqsfdqfdq</td> 
         <td>qsdfdqsfdqsfdfqsf qs dfsq</td> 
         <td>dqfdqsfdsq</td> 
         <td>dsqfqsdf</td> 
         <td>sqdfsqdf</td> 
         <td>sdfsdfqsf</td> 
         <td>dsfqsdfqsdfqsdf</td> 
         <td>sdqfsqdfsd</td> 
         <td>dsqfqsfdqsfsqfqsfdqsf</td> 
        </tr> 
       </tbody> 
      </table> 
     </div> 
    </body> 
</html> 

ブラウザ結果 enter image description here

あなたはさらにテーブルよりも画面の幅を変更する場合は、縦モードに反転します。

PS:firefox、chrome、safariで同じ動作。

+1

喜んで仲間を助けました。 –

答えて

4

bodyタグにスタイルoverflow-x:scroll !important;を与えます。 overflow-x:hiddenがいずれかの場所に設定されている場合、このルールは、それを上書きしますので、!importantが使用されている

body{ 
    overflow-x:scroll !important; 
} 

ある

bodyに設定してください。 containerに設定すると、ヘッダーのすぐ下にスクロールバーが表示されます。あなたは、ページのスクロールバーをしたいので、ご注意** body

に設定します。あなたはここでscrollまたはauto

body{ 
 
    overflow-x:scroll !important; 
 
}
<html> 
 
    <head> 
 
     <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0"> 
 
     <meta charset="utf-8" /> 
 

 
     <link href="semantic.min.css" rel="stylesheet" type="text/css" /> 
 

 
     <script type="text/javascript" src="https://code.jquery.com/jquery-3.2.1.min.js"></script> 
 
     <script type="text/javascript" src="semantic.min.js"></script> 
 
     <title></title> 
 
    </head> 
 
    <body> 
 
     <div class='ui container'> 
 
      <table class="ui striped selectable celled table" id="overviewtable"> 
 
       <thead> 
 
        <tr> 
 
         <th>header 1</th> 
 
         <th>header 2</th> 
 
         <th>header 3</th> 
 
         <th>header 4</th> 
 
         <th>header 5</th> 
 
         <th>header 6</th> 
 
         <th>header 7</th> 
 
         <th>header 8</th> 
 
         <th>header 9</th> 
 
        </tr> 
 
       </thead> 
 

 
       <tbody> 
 
        <tr> 
 
         <td>sdfsdqfqdsf qsfqsf qs dqsfdqfdq</td> 
 
         <td>qsdfdqsfdqsfdfqsf qs dfsq</td> 
 
         <td>dqfdqsfdsq</td> 
 
         <td>dsqfqsdf</td> 
 
         <td>sqdfsqdf</td> 
 
         <td>sdfsdfqsf</td> 
 
         <td>dsfqsdfqsdfqsdf</td> 
 
         <td>sdqfsqdfsd</td> 
 
         <td>dsqfqsfdqsfsqfqsfdqsf</td> 
 
        </tr> 
 
       </tbody> 
 
      </table> 
 
     </div> 
 
    </body> 
 
</html>

2

はあなたのCSSで試してみてください。

.ui.container { overflow-x: auto; } 
1

を与えることができ、私は表示するために使用しているソリューションです。テーブルを正しく。

<html> 
 

 
<head> 
 
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0"> 
 
    <meta charset="utf-8" /> 
 

 
    <link href="https://cdn.jsdelivr.net/semantic-ui/2.2.10/semantic.min.css" rel="stylesheet" type="text/css" /> 
 

 
    <script type="text/javascript" src="https://code.jquery.com/jquery-3.2.1.min.js"></script> 
 
    <script type="text/javascript" src="https://cdn.jsdelivr.net/semantic-ui/2.2.10/semantic.min.js"></script> 
 
    <style> 
 
    .container { 
 
     width: 90% !important; 
 
    } 
 
    </style> 
 
    <title></title> 
 
</head> 
 

 
<body> 
 
    <div class='ui container'> 
 
    <table class="ui striped selectable celled table" id="overviewtable"> 
 
     <thead> 
 
     <tr> 
 
      <th>header 1</th> 
 
      <th>header 2</th> 
 
      <th>header 3</th> 
 
      <th>header 4</th> 
 
      <th>header 5</th> 
 
      <th>header 6</th> 
 
      <th>header 7</th> 
 
      <th>header 8</th> 
 
      <th>header 9</th> 
 
     </tr> 
 
     </thead> 
 

 
     <tbody> 
 
     <tr> 
 
      <td>sdfsdqfqdsf qsfqsf qs dqsfdqfdq</td> 
 
      <td>qsdfdqsfdqsfdfqsf qs dfsq</td> 
 
      <td>dqfdqsfdsq</td> 
 
      <td>dsqfqsdf</td> 
 
      <td>sqdfsqdf</td> 
 
      <td>sdfsdfqsf</td> 
 
      <td>dsfqsdfqsdfqsdf</td> 
 
      <td>sdqfsqdfsd</td> 
 
      <td>dsqfqsfdqsfsqfqsfdqsf</td> 
 
     </tr> 
 
     </tbody> 
 
    </table> 
 
    </div> 
 
</body> 
 

 
</html>

1

overflowプロパティは、コンテンツが要素のボックスをオーバーフローした場合に何が起こるかを指定します。

このプロパティは、要素の内容が大きすぎて指定された領域に収まらない場合に、コンテンツをクリップするかスクロールバーを追加するかを指定します。

注:overflowプロパティは、指定された高さのブロック要素に対してのみ機能します。あなたのCSSでそのための

body{ 
    overflow-x:scroll; 
} 

*注意:また、それが後で問題にあなたを取得するので、できるだけ多くの!importantを使用しないようにしてください。

関連する問題