asp.net中多行文本框高度自适应内容的问题
在网上搜查了很久,关于asp.net中多行文本框高度自适应内容的解决方法
<td style="width:700px" align=center valign=top>
<asp:TextBox runat="server" ID="txtContent" Width=100% ReadOnly=true Wrap=true TextMode="MultiLine" MaxLength="1073741823" BorderWidth="0px" style="OVERFLOW-Y:visible> </asp:TextBox>
</td>
红色字体的这些属性加入到textbox中,那么在ie6下面是能够体现出效果的。
然而仅仅这样,在ie7或者ff中却还不够。
在ie7中,必须把aspx页中
!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
这一行注释掉,原因在百度空间yangletter的博客中,这里拷贝了一部分过来,感谢这位达人
ASP.NET控件textbox的样式overflow:visible在IE6和IE7不兼容的解决
2008-04-09 16:19
现在,最令网页设计者头痛的问题就是网页在各个浏览器中的兼容性。而兼容性差最长见的,也是最令人恐惧的便是“页面布局混乱”。常常一个页面在IE6下显示的非常完美,而到了IE7(或者FireFox)中,则惨的“不堪入目”。到底是什么让这些页面那么的“水土不服”呢?
其实,这些都是IE6酿下的恶果,IE6对web标准的支持过于不足,甚至理解的有偏差,才导致了这些页面的“脆弱”。而IE7则修正了很多的那种“IE6对css解释和渲染”的bug。这种bug有很多。今天,这里只讲其中一个,但是确是最重要的一个,很多的“十分”混乱的页面都是它造成的。可以不客气地说,它简直就像“页面布局混乱黑帮”的幕后黑手,是引起页面布局混乱的祸首之一,而且是最大的一个。 它就是潜伏在网页背后的“‘overflow:visible’IE6渲染bug”。
ASP.NET控件textbox的样式overflow:visible时候,在IE6中的显示和在IE7中的差别很大,IE6中的textbox的高度和宽度都可以自适应,根据内容变化,但是在IE7中不是,textbox的高度宽度都是默认值,这就造成了textbox在IE6和IE7的显示混乱。
原因——IE6对“overflow:visible”的误解
Visible:
相关文档:
MainPage文件:WebForm1.aspx
<%@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="TestMasterPage.WebForm1" enableViewState="False"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
&n ......
由于页面控件的事件引起的postback回发(比如点击事件)处理程序发生在用户控件初始化事件(onload)之后,所以要想通过点击事件处理函数来传递值到用户控件,必须要在页面的onload中传值 if(!page.IsPostBack) { 页面初始化:// } else { 传递参数到用户控件处理程序() ......
protected override void Render(HtmlTextWriter writer)
{
StringWriter sw = new StringWriter();
HtmlTextWriter htm ......
您可以使用 Substitution 控件,在网页上创建可动态更新并可随后集成到缓存页中的区域。
一、方案
使用 Substitution 控件可以在要缓存输出的网页上指定要显示动态内容的部分。对于多数内容都要进行缓存的页,Substitution 控件提供了进行部分页缓存的简化的解决方案。您可以缓存整个页的输出,然后使用 Subst ......