15

<pre>内でのタグの使用に問題があり<td>ます。JSF データテーブルとその 3 つの列があります。書式設定済みのテキストを含めるには、3 つの列すべてが必要です。

タグを使用する<pre>と、テキストは必要に応じてフォーマット済みで表示されますが、列の幅はテキストよりもはるかに大きくなります。

white-space: pre-line;in<pre>タグのスタイルを指定することで、CSSでこれを解決できます。ただし、Firefox と IE でのみ機能し、Chrome はこの種のスタイルを無視します。

だから私の質問:タグ<td>が含まれている幅を解決する方法はありますか?<pre>

編集:

私のCSSクラス:

.dt_row {
    height: 8px;
    margin: 3px 3px 3px 3px;
    color: #000000;
    white-space: pre-line;
}

そして私のデータテーブル:

    <h:dataTable value="#{searchBean.searchResult.concordances}"
                 var="concordance">

        <h:column>
            <pre class="dt_row">
                #{concordance.left}
            </pre>
        </h:column>

        <h:column>
            <pre class="dt_row" style="color: blue;">
                #{concordance.middle}
            </pre>
        </h:column>

        <h:column>
            <pre class="dt_row">
                #{concordance.right}
            </pre>
        </h:column>

    </h:dataTable>

編集:

解決策を見つけました。<pre>タグの代わりに使用<code>したところ、すべてのデータが完全に表示されるようになりました。

4

3 に答える 3

9

要素は、デフォルトで 100%のpre幅、つまり使用可能な幅全体を占有します。ただし、表のセルでは、これはセルの幅に相対的であり、デフォルトでは、 のセルpreは最も長い行に必要な幅になります。そうでない場合は、デフォルトからの逸脱の原因となっているコードを特定し、修正する必要があります。

たとえばwidth、要素に属性またはプロパティを設定した場合はtable、その設定を削除するだけです。

于 2012-05-05T20:54:12.537 に答える
3

タグを格納するdiv要素を持ち、で属性を使用するのはどうですか?preoverflowdiv

ブラウザはスクロールバーを表示しますが、それで問題ないと思います ;-)

于 2012-05-05T20:30:22.423 に答える
-3

テーブル内のテキストの切り詰められたバージョンを表示し、セルの上にカーソルを合わせると、ツールチップのように全体が表示されます。明らかに、これはあなたのコンテキストではうまくいかないかもしれません。

于 2012-05-05T20:28:17.243 に答える