2016-08-19 4 views
-1

私は動的なテーブルを持っています。そして、各行の最初のセルの幅をそのコンテンツのサイズに応じて作りたいと思います。 今のところ、セルのテキストはデータに応じてランダムに分割されます。テーブルセルはできるだけ長く、最大幅より小さいのはどうですか?

私が望むのは、セルが実際に破損するような最大幅までセルを長くすることです。

たとえば、最大幅が200ピクセルの場合: カラムの最大セルが100ピクセルの場合、カラムは100ピクセルになります。 30pxの場合、列は30pxになります。 しかし、300pxの場合、列は200pxになり、300pmを超えるセルは改行されます。

min-widthとmax-widthを設定しようとしましたが、コンテンツの最小幅があり、必要に応じて200pxまで拡張されません。

+1

コードを入力してください。ありがとう – Aziz

+0

テーブルコードは、パンダで生成され、私はそれにアクセスすることはできません、そして私はそれが役に立つと確信していません – AimiHat

答えて

1

ラップmax-widthを持つ要素内のセルの内容:であるため(spec

.cell { 
 
    display: table-cell; 
 
    border: 1px solid; 
 
} 
 
.contents { 
 
    max-width: 200px; 
 
}
<div class="cell"> 
 
    <div class="contents"> 
 
    Lorem ipsum. 
 
    </div> 
 
</div> 
 
<br /> 
 
<div class="cell"> 
 
    <div class="contents"> 
 
    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec ligula lorem, efficitur sit amet massa consectetur, gravida venenatis dui. 
 
    </div> 
 
</div>

良いが、細胞に直接max-widthを設定していませんCSS 2.1では、min-widthmax-widthのテーブルへの影響は インラインテーブル、テーブルセル、テーブル列、および列グループは、 未定義です。

+0

私はhtml世代へのアクセスを持っていません..パンダはそれを管理します。私が見つけた唯一の方法は、最大幅、空白なし折り返し、およびテキストオーバーフロー省略記号を設定することです。 – AimiHat

+0

空白のようなものを入れないと、最大幅でラップします。 – AimiHat

+0

@Codemon CSSテーブルL3はテーブルセルで 'max-width'を許可しますが、誰もその初期ドラフトを実装していないようです。 HTMLを変更できない場合は、テーブルをフレックスボックスまたはその他のレイアウトとして表示してねじを締めます。 – Oriol

関連する問題