テーブル適応とオーバーフローのいくつかの設定の詳細な説明

テーブル適応とオーバーフローのいくつかの設定の詳細な説明

1. テーブル リセットの 2 つのプロパティ:

①border-collapse: collapse; /* 表の結合境界モデルを設定する*/

②border-spacing: 0; /* 表のセルの間隔を0にする */

コード:

<div class="fz">
    <div style="width: 600px;" class="bg-grey p10">
        <テーブルクラス="bg-white">
            <tr>
                <th>シリアル番号</th>
                <th>開始時間</th>
                <th>終了時間</th>
                <th>備考</th>
                <th>オペレーション</th>
            </tr>
            <tr>
                <td>1</td>
                <td>2014/8/2</td>
                <td>2015/1/1</td>
                <td>時間はどこへ消えたのでしょうか?</td>
                <td><a href="#">編集</a></td>
            </tr>
        </テーブル>
    </div>
</div>

tdのみがリセットされた場合、th{padding:0}は境界を設定する効果を持たない。

td{ border:1px solid #ff4136;} を設定した場合の効果

テーブル { border-collapse: collapse; border-spacing: 0; } を設定した場合の効果

2. 1行オーバーフロードット表示

.ell { テキストオーバーフロー: 省略記号; 空白: ラップなし; オーバーフロー: 非表示; }

必要な条件は次のとおりです。

①要素の幅を必ず設定してください。

②white-space: nowrap; white-space属性は、要素内の空白の処理方法を設定します。 Nowrap テキストは折り返されず、<br> タグに遭遇するまでテキストは同じ行に継続されます。 (テキストが下方向に伸びるのを防ぎます。高さを定義しても省略記号は表示されず、余分なテキストは切り取られます。)

③overflow: hidden;(テキストが水平方向に拡大するのを防ぐため)

④text-overflow: ellipsis; ellipsis は、オブジェクト内のテキストがオーバーフローしたときに省略記号を表示します (...)

3. テーブルの幅を設定する

td{ 境界線:1px 実線 #ff4136;}
.title{ 幅: 100px;}
.kaiyao{ 幅: 200px;}
.time{ 幅: 120px;}
<div class="fz">
    <div style="width: 800px;" class="bg-grey p10">
        <テーブルクラス="bg-white pctW">
            <tr>
                <th class="title">タイトル</th>
                まとめ
                <th class="time">時間</th>
            </tr>
            <tr>
                <td>1行ドット表示</td>
                <td>Chrome 34 以降ではレスポンシブ画像に対応しているとのことで、<img> タグに特定の属性を設定することで、画像の自動レスポンシブ取得が実現できるそうです。ぜひ試してみてくださいね~</td>
                <td>2014-04-09 23:51</td>
            </tr>
            <tr>
                <td>連続文字の折り返し</td>
                <td>北京の都市を訪れるのは今回が初めてです</td>
                <td>2014-04-09 23:53</td>
            </tr>
        </テーブル>
    </div>
</div>

操作効果:

問題: td の幅は設定されているが、セルの流動性によりテキストがオーバーフローしない。また、テーブルの幅はセルの内容に応じて自動的に計算されます。

解決策: 追加

テーブル{テーブルレイアウト:固定;}

効果:

table-layout: fixedの目的は、テーブルレイアウトを固定することです。

問題: 中国語はオーバーフローしませんが、英語はオーバーフローします。テーブルに設定された幅はまだ機能しませんか?

解決策: 「アウトライン」の 2 つのセルに .ell および .bk スタイルを追加します。

.cell_bk { 表示: テーブル; 幅: 100%; テーブルレイアウト: 固定; 単語折り返し: 単語区切り; }
.bk { 単語折り返し: 単語区切り; }

操作効果:

問題: テーブルの幅設定がまだ機能しませんか? 。計算後、各 td の幅を設定すると、セルの実際の幅がテーブル幅の割合として計算されます。

たとえば、表の幅は 800 ピクセルです。 tdの幅はそれぞれ100px 200px 100pxです。 table-layout:fixedの場合。つまり800の1:2:1の比率です

実際の td の幅は、200px、400px、200px です。比例計算したくない場合は、次の解決策を使用できます。

解決策: 表の最後のセルで参照される幅制限クラス「.time」を削除します。

効果:

「タイトル」と「概要」の幅はそれぞれ 100px と 200px に設定されています。

要約:

(1) 表の幅を設定するには、table-layout: fixed 属性を追加する必要があります。この属性がないと、セルの幅が設定されていても、.ell と .bk は機能しません。

(2)table-layout:fixed属性を追加すると、セルの幅がパーセンテージで表現されます。 ②セル幅をpxで表現する場合は、最終セルの幅を設定しないでください。

4. 2列適応セル部分連続英字折り返し

/*連続した英語の文字は2列の適応セルに折り返されます*/
.cell_bk { 表示: テーブル; 幅: 100%; テーブルレイアウト: 固定; 単語折り返し: 単語区切り; }

これは通常のフローティングとは異なることに注意してください。フローティングはラップアラウンドですが、これは 2 列です。

コード:

.cell{ display: テーブルセル; *display: インラインブロック;}
<div class="fz">
    <div style="width: 600px;" class="bg-grey p10">
        <div>
            <img src="images/xxx.jpg" class="l p10" width="100">
            <div class="cell">
                <p class="cell_bk">
                    1977年のこの日、28歳のラツィオのミッドフィールダー、ルチアーノ・レ・チェッコーニと2人の友人がローマの宝石店に足を踏み入れた。どういうわけか、彼は突然、冗談を言いたくなった。宝石店に入ると、彼は「止まれ!強盗だ!」と叫んだ。宝石店のオーナーが飛び出してきて彼を撃った後、彼が最後に発した言葉は「冗談だ!冗談だ!」だった。30分後、彼は死亡した。
                    <br/><br/>
                    <span>//zxx:私は xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx です</span>
                    <h3>処理なし</h3>
                </p>
            </div>
        </div>
    </div>
</div>

効果: (すべてのブラウザに対応)

画像imgの幅を200に設定した場合の効果

注: サポートされているのは 2 列のみです。3 列を使用する場合、IE6/7 ブラウザでは問題が発生します。

float と比較すると、2 列効果を実現できますが、画像の幅が変わった場合には適応されません。同時に右側の div の padding-left 値を変更する必要があります。

<img src="images/xxx.jpg" class="l p10" width="200">
      <div style="padding-left: 220px;">
              <p class="cell_bk"> 

これで、テーブルの適応とオーバーフローの詳細な設定に関するこの記事は終了です。テーブルの適応とオーバーフローに関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

<<:  Vue でのテキストエリア適応高さソリューションの実装

>>:  最新のウェブフロントエンドフレームワーク10選を紹介(翻訳)

推薦する

CentOS8.0 で FTP サーバーをインストールして設定する方法

CentOS8.0-1905 のリリース後、FTP サーバーを CentOS の新しいバージョンに移...

MYSQL クエリの効率を向上させる 10 の SQL ステートメント最適化テクニック

MySQL データベースの実行効率はプログラムの実行速度に大きな影響を与えます。データベースの効率的...

「いいね!」機能では MySQL と Redis のどちらを使用すればよいでしょうか?

目次1. 初心者が陥りがちな間違い2. Iteratorのremove()メソッドを使用する3. f...

ウェブサイトがhttpsを有効にした後のSSLのセキュリティ構成と検出

最近のウェブサイトでは SSL を有効にするのが標準となっています。ただし、SSL を設定した後も、...

CSS ボックスを中央揃えするためのよく使われるいくつかの方法 (要約)

最初のもの: CSSの位置プロパティの使用 <スタイル タイプ="text/css&...

フォームのmethod=post/getの違い

フォームは、get と post の 2 つのデータ転送方法を提供します。どちらもデータを送信する方...

よく使われる HTML 形式のタグ_Powernode Java Academy

1. タイトルHTML では、<h1></h1> から <h6>...

Vue でフルスクリーンを実装し、フルスクリーン終了を監視する

目次序文:実装手順:完全なソースコード:詳細情報:序文: vueでは、デフォルトページを実装し、di...

...

フォームの読み取り専用属性と無効な属性についての簡単な説明

フォーム内の読み取り専用および無効な属性1. 読み取り専用:サーバーは、ユーザーがデータを変更するこ...

JSに関する7つの面接の質問、あなたはいくつ正しく答えられますか

序文JavaScript では、これは関数呼び出しコンテキストです。この動作が非常に複雑であるからこ...

異なるブラウザ間で互換性のあるテキスト配置を実現する CSS

フォームのフロントエンド レイアウトでは、テキスト ボックスのプロンプト テキストを両端に揃える必要...

TOM.COMのホームページリニューアルの経験

<br />何の警告もなく、cnBeta で TOM.COM の Web サイトが再設計...

Vue.jsはカレンダー機能を実装します

この記事では、カレンダー機能を実装するためのVue.jsの具体的なコードを例として紹介します。具体的...

JavaScriptオブジェクトをマージするさまざまな方法の詳細な説明

目次オブジェクトをマージするさまざまな方法(インターフェースを通じてデータを取得し、それをローカル ...