2016-07-25 14 views
0

テーブルのヘッダーがあります。thの値が折り返し、一部が折り返されています。ヘッダーの末尾にすべての値と境界線を揃えることができません。ここでのコードの作業スクロールテーブルのthead内での垂直方向の整列tbody

JSFiddle

は、私は次のことを試してみましたが、それは効果がありませんでした:

th { 
    vertical-align: bottom; 
} 
+0

すべての要件を反映するために質問を更新してください。また、theadがfixerであるかtbodyがスクロール可能であるというタイトルを追加します。私はこれらの条件に合わせて自分の答えを更新しました。 – actimel

答えて

-1

は、テーブルとその要素のための表示を上書きしないでください。あなたはHTMLテーブルを使用し、それをCSS経由でブロックに変更しました。どうして?

.table, 
thead, 
tbody, 
tr, 
th, 
td { 
    display: block; 
} 

また、あなたは、テーブルセルをフロートさせることはできません。

はこれを削除します。

この削除:OPは、彼が固定ヘッダと、私は彼の要件に基づいて、次のことをお勧めスクロール可能なコンテンツを持つテーブルを望んで述べられた後:

th, 
td { 
    float: left; 
    width: 25%; 
} 

UPDATEを。次のソリューションは、固定列幅と列数を持つ元のコードに基づいています。私はこの種の解決策が嫌いですが、この場合は十分です。

/* Set table layout to fixed to prevent uneven column widths */ 
.table { 
    table-layout: fixed; 
} 

/* Set the thead and tbody only to display block */ 
.table thead, .table tbody { 
    display: block; 
} 

/* Enable table layout again for each row */ 
.table tr { 
    width: 100%; 
    display: table; 
} 

ここに全コード:https://jsfiddle.net/zazgh8u9/9/

+0

'tbody'のスクロールと' tbody'と 'thead'の値のアライメントの両方を達成するには、これらのアイテムが必要でした。これらのアイテムを削除すると、テーブルが完全に変更されることがわかります。 – Bren

+0

それはヘッダーのために働くが、他のすべてを犠牲にする。私は大きなテーブルを含めて、必要なものすべてを示しました。その後、スクロールを行う別の方法はありますか? – Bren

+0

しかし、あなたはあなたのテッドを固定したいとあなたに質問していませんでした。達成するのは簡単ではありません。周囲を検索してみてください。テーブルの表示をブロックするように変更しないでください。 http://stackoverflow.com/questions/17067294/html-table-with-100-width-with-vertical-scroll-inside-tbody/17380697 – actimel

-1

ここで多くは非常に技術的な 1を取得したいと私は長い説明を行います)のセルにdisplay: blockを使用して、あなたはしかし、次の行に移動するすべてのセルを引き起こしまた、floatを使用して、セルが「インライン」になるようにします。また、フローティング要素はブロック表示を行います。したがって、ここには冗長性があります。

2)垂直アライメントを実行しようとしている場合は、他の方法を見つける必要がある垂直アライメント(このプロパティはインラインブロックまたはテーブルセル表示でのみ機能します)を使用できます。

3)セルに幅を与えているため、テキストが折り返しています。要素に高さを与えず、オーバーフローが非表示に設定されていない場合は、必要に応じて折り返してすべてのテキストに対応するように高さを設定します。この場合、いくつかのオプションがあります。1)テキストを省略記号で切り捨て、次の行に折り返す、またはオーバーフローを非表示にする。

+0

申し訳ありません、私はフォローしていません。それらを修正するために既存のコードに追加できる最後のオプションの1つですか?私が追加した 'display:block'は私を捨てていることに気づきますが、' tbody'で必要なスクロールを達成する唯一の方法です。 – Bren

+0

テキストが要素の幅を超えると、次の行に折り返します。次に、2つのシナリオがあります:1)要素には高さが設定されていません。この場合、要素の高さは、テキストが次の行に折り返されるので、テキストを格納するために必要なものに調整されます。 2)要素の高さが設定されている場合、オーバーフローが非表示に設定されている場合、指定された次元に収まるようにテキストが表示されます。要素の高さが設定されていてオーバーフローが設定されていないか可視に設定されている場合、要素のディメンションは設定されますが、それでもすべてのテキストが表示されます。それが理にかなってほしい! – Gacci

+0

ありがとうございます。私は少なくとも「th」に高さを加えて境界線を修正することができました。巻き戻されていないテキストは、底部ではなく上部に配置されていますが、以前よりも優れています。私は何とかここに他のスタイリングを巻き戻す必要があると思うが、すべての試みはスクロール機能をねじ込む – Bren

関連する問題