1

「列」テーブルを含むネストされたテーブルがいくつかあります。一番下の表には、ユーザーがコメントを投稿できる複数行のテキスト領域が含まれています。ユーザーがページを保存するときに、コメントの各行を順序付けられていないリストの要素としてキャプチャしたいと考えています。HTMLは次のとおりです。

<td><strong>Key Messages:</strong><asp:Label runat="server" ID="messagesLabel"></asp:Label>
    <div id="messagesDiv" runat="server">
        <asp:TextBox runat="server" ID="MessagesTextbox" Width="100%" TextMode="MultiLine" Height="100" Columns="10"></asp:TextBox>
        <asp:Button runat="server" ID="clearMessages" Text="Clear Messages" OnClick="ClearMessages_Click" />
    </div>
</td>

私の問題は、順序付けられていないリストがページに戻されると、非常に長い行がテーブルの幅を超えて伸びてしまうことです。リスト内の 1 つの要素、つまり 1 つの箇条書きだけを残したまま、ある時点で長いコメントを折り返すようにしたいと考えています。MaxLength および Columns プロパティを設定しようとしましたが、うまくいきませんでした。

編集:

次を使用して最初の提案を試しました:

ul
{
    width: 50px;
}
li
{
    width: 50px;
}

しかし、レイアウトには影響しませんでした。どの幅の値でも、レイアウトは変更されませんでした。

2 番目の解決策を使用しようとしましたが、エディターで使用できる CSS プロパティ「word-wrap」がありません。CSS 2.1 をサポートする Visual Web Developer Express 2010 でプログラミングしているので、私が理解している限り、このプロパティを設定できるはずですが、できません。とにかく試してみましたが、レイアウトには影響しませんでした。

編集:

リストの作成方法は次のとおりです。

XmlDocument xdoc2 = new XmlDocument();
    xdoc2.Load(messagesFileLocation);
    XmlNodeList messagesList = xdoc2.GetElementsByTagName("message");
    if (messagesList.Count > 0)
    {
        string unorderedList = "<ul>";
        for (int i = 0; i < messagesList.Count; i++)
        {
            XmlNode node = messagesList.Item(i);
            string message = node.InnerText.ToString();
            unorderedList += "<li>" + message.ToString() + "</li>";
        }
        unorderedList += "</ul>";
        messagesDiv.InnerHtml = unorderedList;
    }

ユーザーの編集は、実際には最初に XML ファイルに保存され、次にページに戻されます。

4

2 に答える 2

3

ul 要素と li 要素の幅を指定すると、コンテンツが折り返されます。また、親要素を height:auto; に設定します。そのため、コンテンツのサイズが大きくなるにつれて高さが変化します。

より多くのコードを投稿すると、より良いアイデアを提供できます。

于 2012-08-15T15:19:05.457 に答える
-2

はい、可能だと思いますこれを確認してください

http://www.w3schools.com/cssref/css3_pr_word-wrap.asp

この

http://webdesignerwall.com/tutorials/word-wrap-force-text-to-wrap

于 2012-08-15T15:42:11.077 に答える