关于Page_load两次的原因 display与visibility的区别(转)

display:none

CSS1 隐藏对象。与 visibility 属性的hidden值不同,其不为被隐藏的对象保留其物理空间

visibility:hidden

对象隐藏,与 display 属性不同,此属性为隐藏的对象保留其占据的物理空间。

但是因为使用了visibility:hidden,拉长的内容其实就是那个含有图片的DIV;而改用display:none后就正常了.

 

后来找出一篇<img src="">会导致Page_load执行两遍的文章,恍然大悟,马上将iis的默认始动文档,去掉,然后再调试,一切正常!

 本着钻研精神,然后再慢慢找出导致执行两次的原因,仔细检查了aspx文件,并无发现<img src="">的代码,当时也觉得奇怪,难道还有其他可能性,诸如<script src="">等?一个个来调试,仍然没有半点头绪!后来不经意发现当前页面有一个图片不能正常显示(该图片的地址是从数据库读出,右键属性,发现其地址为:http://locahost,害了我头痛了一个上午的祸首终于给我揪出来了。原来是 img src对应的数值是空导致的!

 致于img标签为空执行page_load的原因是:img src=""   > img src="/"  > img src="/index.aspx",因为重新请求了index.aspx,所以page_load又执行了一次。不过如果IIS没有设置默认文档,该问题是不会出现的,所以一些人提及到本地调试没有问题,一旦上传至服务器就出问题,就是因为这个原因!

posted @ 2008-03-11 13:52  小猴  阅读(354)  评论(0)    收藏  举报