asp:TextBox with TextMode="MultiLine" wrap="True" 不会换行

asp:TextBox with TextMode="MultiLine" Wrap="True" will not wrap

更新:下面的问题仍然有效,但我在 Chrome 中测试了我的页面,它按预期工作。当我在 IE 中点击页面时,它没有换行。我现在将开始研究这种差异。如果您知道针对此问题的 IE 修复程序,请告诉我。谢谢

我有一个 asp:TextBox 不会换行。我在多篇文章中 运行 说我必须有 TextMode="MultiLine" Wrap="True",我确实有,但我的文本仍然 运行 超出了文本框。

我认为我不需要 post 整个页面,但请告诉我是否需要。这是我的 asp:TextBox,CSS class 作用于 <TD>。如果您看到为什么我的文字没有换行,请告诉我?!

            <td class="auto-style130" >
                <asp:TextBox ID="lbl_pain1_drug" Width="400px" runat="server" Rows="4"
                    TextMode="MultiLine" Wrap="True" ReadOnly="true" BorderStyle="None"
                    BorderWidth="0" Font-Names="Tahoma" Height="55px" 
                    style="overflow:hidden" >
                </asp:TextBox>
            </td>

这是class="auto-style130"

.auto-style130 {
            /*sig section of script*/
            border: .1px solid #808080;
            word-wrap: break-word;
            word-break: break-all;
            height: 50px;
            width: 402px;
            vertical-align: middle;
        }

Here 是我找到解决方案的文章,它基本上说最新的 IE 浏览器处理文本框换行的方式与以前略有不同。解决方案是添加 white-space: pre-wrap; 我的 CSS。这是新区块的样子:

.auto-style130 {
    /*drug section of script*/
    border: .1px solid #808080;
    white-space: pre-wrap;
    height: 35px;
    width: 402px;
    vertical-align: middle;
}

这让所有东西都包裹起来了!

<asp:TextBox ID="txtMonthsDays" runat="server" class="form-control input-sm m-bot15"
                                                                                            Font-Bold="true" Text='<%#Bind("MonthsDays") %>' Wrap="True" Width="50px" Rows="2"
                                                                                            TextMode="MultiLine" ForeColor="#800000"></asp:TextBox>