0

white-space: pre-lineレイアウトで問題に直面しました。コンテンツをdiv要素にラップすると問題なく動作しますが、テキストに置き換えるdivtableラップされなくなります。これは事例を示すためのほんの一部です。元のコードでは、この外部テーブルを置き換えるのは困難です。コードは次のとおりです。

<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <style type="text/css">
        body {
            border: 1px dashed red;
            font-size: 12px;
            font-family: "Trebuchet MS", Verdana, Helvetica, Sans-Serif;
            margin: 0 auto !important;
            padding: 10px;
            width: 600px;
        }

        .document-preview {
            border-spacing: 0;
            width: 100%;
        }

        .document-preview .content-details-row {
            padding: 0 2px 0 162px;
            position: relative;
            white-space: nowrap;
            z-index: 1;
        }

        .document-preview .content-details-row span:first-child {
            display: block;
            float: left;
            margin: 0 2px 0 -160px;
            overflow: hidden;
            width: 160px;
            z-index: 2;
        }

        .document-preview .content-details-row span:first-child:after {
            content: "..............................................................................";
            font-weight: lighter;
            font-size: 10px;
            letter-spacing: 2px;
        }

        .document-preview .content-details-row .content-details-value {
            display: inline-block;
            width: 100%;
            z-index: 2;
        }

        .document-preview .content-details-row .content-details-value > div {
            white-space: pre-line;
            word-wrap: break-word;
        }
    </style>
</head>
<body>

    <table class="document-preview"><tbody><tr><td>
        <div class="content-details-row">
            <span>Label:</span> 
            <span class="content-details-value">
                <div>Doesn't work: Something something AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA</div>
            </span>
        </div>
    </td></tr></tbody></table>

    <hr />

    <div class="document-preview">
        <div class="content-details-row">
            <span>Label:</span> 
            <span class="content-details-value">
                <div>Works: Something something AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA</div>
            </span>
        </div>
    </div>

</body>
</html>

作業サンプル: http://jsfiddle.net/UPXzt/1/

前もって感謝します。

4

2 に答える 2

2

このスタイルをページに追加します

table {
    table-layout: fixed;

}

サンプル: http://jsfiddle.net/UPXzt/10/

于 2012-09-20T11:23:51.150 に答える
0

このデモを試す

divに幅を追加するだけです

.document-preview .content-details-row .content-details-value > div 
{
width: 430px;
white-space: pre-wrap !important;
word-wrap: break-word;
}
于 2012-09-20T11:18:09.820 に答える