我有这个非常奇怪的问题。我有一些文本框的设置,其定义如下:
<table style="width: 100%; position: relative; top: -10px;">
<tr>
<td style="font-size: 9pt; text-align: left;">
<asp:TextBox ID="multiHandle2_1_BoundControl" BackColor="Transparent" BorderStyle="None"
Font-Size="9pt" runat="server" Width="30" Text="25" /><span style="position: relative;
left: -11px;">DKK</span>
</td>
<td style="font-size: 9pt; text-align: right; float: right;">
<asp:TextBox ID="multiHandle2_2_BoundControl" runat="server" Width="30" BackColor="Transparent"
BorderStyle="None" Font-Size="9pt" /><span style="position: relative; left: -5px;">DKK</span>
</td>
</tr>
</table>
现在,这几乎在任何时候都有效。但是,我使用输出缓存,我有几次看到我的网站,并且HTML被渲染错误。让我们看一下呈现的HTML。
当它被渲染错误时(大约95%的时间发生),它只是在我的文本框中删除以下内容:
BackColor="Transparent" BorderStyle="None"
Font-Size="9pt" Width="30" Text="25"
这真的很奇怪,因为我可以看到这种情况在大多数时候都得到了很好的应用。
当它工作时,它会像这样呈现:
<table style="width: 100%; position: relative; top: -10px;">
<tr>
<td style="font-size: 9pt; text-align: left;">
<input name="ctl00$ctl00$ContentPlaceHolder1$LeftSidebar$Filters1$multiHandle2_1_BoundControl" type="text" value="149" id="ContentPlaceHolder1_LeftSidebar_Filters1_multiHandle2_1_BoundControl" style="background-color:Transparent;border-style:None;font-size:9pt;width:30px;" /><span style="position: relative;
left: -11px;">DKK</span>
</td>
<td style="font-size: 9pt; text-align: right; float: right;">
<input name="ctl00$ctl00$ContentPlaceHolder1$LeftSidebar$Filters1$multiHandle2_2_BoundControl" type="text" value="249" id="ContentPlaceHolder1_LeftSidebar_Filters1_multiHandle2_2_BoundControl" style="background-color:Transparent;border-style:None;font-size:9pt;width:30px;" /><span style="position: relative; left: -5px;">DKK</span>
</td>
</tr>
</table>
当它不起作用时,会像这样呈现(经常发生,但并非总是如此)。区别在于我输入的样式是GONE。:
<table style="width: 100%; position: relative; top: -10px;">
<tr>
<td style="font-size: 9pt; text-align: left;">
<input name="ctl00$ctl00$ContentPlaceHolder1$LeftSidebar$Filters1$multiHandle2_1_BoundControl" type="text" value="13" id="ContentPlaceHolder1_LeftSidebar_Filters1_multiHandle2_1_BoundControl" /><span style="position: relative;
left: -11px;">DKK</span>
</td>
<td style="font-size: 9pt; text-align: right; float: right;">
<input name="ctl00$ctl00$ContentPlaceHolder1$LeftSidebar$Filters1$multiHandle2_2_BoundControl" type="text" value="249" id="ContentPlaceHolder1_LeftSidebar_Filters1_multiHandle2_2_BoundControl" /><span style="position: relative; left: -5px;">DKK</span>
</td>
</tr>
</table>
SO ...... ASP.NET - 发生了什么?这非常烦人;-)
答案 0 :(得分:0)
正如你写的那样奇怪而且我确定“非常讨厌”......我不知道为什么会这样,但你可以通过正确使用css
来解决它。
不是在元素上编写样式,而是只给它class
,并将该类的样式定义放在你的css
文件中。