当前位置:编程学习 > C#/ASP.NET >>

asp.net超级恶心的问题,页面字体变大问题需求帮助

在asp.net的页面中,放一个按钮或者什么服务器端的控件,只要点击,页面刷新一下,页面中的字体就变大了,太恶心了,问了好多人都不知道怎么回事

比如:
页面中放一个按钮,点击进入按钮的单击事件:
    protected void Button1_Click(object sender, EventArgs e)
    {
         //里面什么都不写,页面字体正常,虽然刷新一下页面
    }

    protected void Button1_Click(object sender, EventArgs e)
    {
        JScript.OpenWebForm("http://www.sohu.com");
        //这里面只要有操作,页面字体就变大了,奶奶的

    }


那位英雄 看看???

恶心的.net --------------------编程问答-------------------- 以前碰到过,但是一个超级链接,

但是估计是浏览器的问题,而不是 Asp.net

后者只管服务器端的事情,前者才管客户单呈现效果

--------------------编程问答-------------------- JScript.OpenWebForm(this.page,"http://www.sohu.com");

改成这个样子就可以了 --------------------编程问答-------------------- 楼上的兄弟 ,还有别的操作,只要有操作,不止是打开页面,就变大,怎么解决 我日的 .net --------------------编程问答-------------------- 哎 要定义css 规范一下 就可以了 --------------------编程问答-------------------- 你的css要定義鏈接后字顯示的字體,顏色,大小啊! --------------------编程问答-------------------- 不知道我遇到過的問題跟你一樣不,以前直接在htmlTable的td里打字,那些字不設大小的話是會變大的,後來用label裝文字就沒問題了 --------------------编程问答-------------------- 也是碰到过.
但是我把css直接写到html代码里就没问题了,放到单独的css文件里就也变了呢! --------------------编程问答-------------------- 呵呵 看来都遇到过,不知道有没有这样的标准啊?
--------------------编程问答-------------------- Mark, --------------------编程问答-------------------- 是脚本的问题,Page.RegisterStartupScript用这个替换JScript.OpenWebForm --------------------编程问答-------------------- 看看 --------------------编程问答-------------------- JS控制CSS就行了。这种问题也问,真恶心 --------------------编程问答-------------------- 呵呵,主要是你的css样式设的自己大小固定就可以了 --------------------编程问答-------------------- 解决办法1:
删除
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

解决办法2:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
之前不要有任何输出

详细解释参考
http://blog.csdn.net/net_lover/archive/2006/12/29/1467390.aspx --------------------编程问答-------------------- 关注!以前自己也越到这种问题,再次刷新就OK了! --------------------编程问答-------------------- 1.CSS的设计不符合标准。
2.或者把CSS放到页面上来。 --------------------编程问答-------------------- 孟子 老大都来了,关注了 呵呵  谢谢各位~~~~~~~~~~~~~ --------------------编程问答-------------------- .net还有很多恶心的,五花八门的问题 --------------------编程问答-------------------- 在Web.config设置<pages smartNavigation="true" />(system.web标记内),如果不行就设置为false,这是个奇怪的问题,一般情况下打开smartNavigation会出现回发后样式还原的情况,但是有少部分时候如果不打开就会出现样式还原,具体发生原因本人还在研究中,至今没找到结论,更改后记得清空缓存在测试。 --------------------编程问答-------------------- mark! --------------------编程问答-------------------- 用CSS写死就OK --------------------编程问答-------------------- 是你的CSS没设置好。。。要标准,要规范。 --------------------编程问答-------------------- 就知道你 是 直接输出到 页面最顶了。。。。
肯定会有问题啥,html都没有学好。 --------------------编程问答-------------------- Mark --------------------编程问答-------------------- Mark
--------------------编程问答-------------------- up --------------------编程问答-------------------- 好像有Response.Write在当前页面输出script语句时候就出现,CSS规范也没有用
比如Response.write("<script>alert('aa');</script>");
遇到好多次了,我改用Page.RegisterStartupScript后就可以了 --------------------编程问答-------------------- 这问题遇到过
  是因为在加载页面前加载了css
你可以改成直接在代码里加css --------------------编程问答-------------------- mark --------------------编程问答-------------------- Page.RegisterStartupScript和Response.write在页面中输出的位置不同引起的!
Response.write输出在顶部! --------------------编程问答-------------------- 这是由于你直接Response.write输出脚本代码到顶部,打乱了文档模型,所以造成了这样的结果,输出结果建议使用asp.net标准的方法如Page.RegisterStartupScript等 --------------------编程问答-------------------- 用CSS就OK了 --------------------编程问答-------------------- 解决了 用css定义好了就行 好像 真是 ....唉 --------------------编程问答-------------------- 比方说在页面里面有个LinkButton,要点击以后要打开新窗口,而且新窗口的URL是根据用户选择结果动态产生的。LinkButton的代码这样写:
    protected void ServiceManHistoryButton_Click(object sender, EventArgs e)
    {
        Response.Write("<script>window.open('EquipmentHistory.aspx?eid=" + ServiceManDropDownList.SelectedValue + "');</script>");
     }
运行以后会发现,新窗口是打开了,但是原来页面的字体变大了,奇怪的问题!
有人想也不想就说是CSS没设置好,对这些人我很无语,求教的时候最怕遇到他们
实际原因是直接Response.write输出脚本代码到顶部,打乱了文档模型,所以造成了这样的结果。

OK,解决方法有两个。

方法一:把Response.Write()语句替换为这个

Page.RegisterStartupScript("ServiceManHistoryButtonClick", "<script>window.open('EquipmentHistory.aspx?eid=" + ServiceManDropDownList.SelectedValue + "');</script>");

这个方法用于在页响应中发出客户端脚本块,前一个参数是该Script在页面中的唯一名称(随便起,不重复就行),后一个是脚本内容。

这个方法应该是微软官方推荐的方法。

方法二:在原程序的Response.Write()语句后再加一句

Response.Write("<script>document.location=document.location;</script>");
--------------------编程问答-------------------- css --------------------编程问答-------------------- 学习了,正在纳闷呢,原来如此 --------------------编程问答-------------------- Page.RegisterStartupScript("","../url"); --------------------编程问答--------------------
引用 34 楼 dalanmao5973 的回复:
比方说在页面里面有个LinkButton,要点击以后要打开新窗口,而且新窗口的URL是根据用户选择结果动态产生的。LinkButton的代码这样写:
  protected void ServiceManHistoryButton_Click(object sender, EventArgs e)
  {
  Response.Write("<script>window.open('Equi……


Response.Write("<script>document.location=document.location;</script>");

这个好啊! --------------------编程问答-------------------- 接分大王来也。。。。。 --------------------编程问答-------------------- 我也用到这样的问题,头大啊~ --------------------编程问答-------------------- Response.Write("<script>document.location=document.location;</script>");

这个好,简单实用 --------------------编程问答-------------------- 34L正解!说CSS都是没脑子的,实践出真知! --------------------编程问答-------------------- 一年没见光了  被我挖出来了 --------------------编程问答-------------------- 刚刚我也碰到了····关注 --------------------编程问答-------------------- 慢慢学吧,东西还多者呢 --------------------编程问答-------------------- 完全是回发的问题, 

 比如CSDN这个回复内容,如果回复完了。 这个按钮只是写了一个 bind(); 重新绑定一下要查询的内容。铁定页面布局乱了。


  都是重新刷新页面。定点抛锚来解决的。
  
跳转(request.url+"#回复框ID"); --------------------编程问答-------------------- Page.RegisterStartupScript这样就不会有问题 --------------------编程问答-------------------- 一般情况下是都是回传造成的,你可以自己在一个操作完成后重新定位一个页面。 --------------------编程问答-------------------- 你的 JScript.OpenWebForm里面应该用了Response.Write()吧,这样的话在生成HTML文件的头部会出现
Response.Write()抛出的脚本。这样就破坏了W3C协议,所用的CSS将失效。这时只有在标签里定义的STYLE才不会失效。

LZ把Response.Write()换成ClientScript.RegisterStartupScript()即可。

比如:
ClientScript.RegisterStartupScript(GetType(), "openWindow", "<script>window.alert('" + message + "')</script>")
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,