首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • IE7下textarea自适应高度问题 [已结帖,结帖人:lgzxz999]
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • lgzxz999
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    • 结帖率:
    发表于:2008-11-09 13:19:05 楼主
    运行在IE7下面的时候:
    这样的代码会有问题:
    HTML code
    <!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"> <head> </head> <body> <textarea id="textarea" style="width:100%;overflow-y:visible" readonly="readonly"> I have to agree with Niall Doherty basically means "traverse every css element and give it these attributes". That is a very unnecessary strain on the server and a bad semantic practice, as you have to give some elements padding/margin again, after stripping them. basically means "traverse every css element and give it these attributes". That is a very unnecessary strain on the server and a bad semantic practice, as you have to give some elements padding/margin again, after stripping them. basically means "traverse every css element and give it these attributes". That is a very unnecessary strain on the server and a bad semantic practice, as you have to give some elements padding/margin again, after stripping them. </textarea> </body> </html>

    如果把其中的
    HTML code
    <!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"> 改成 <html>

    就可以达到IE7自适应高度的效果,是过渡的DTD有什么限制吗?
    现在我只要textarea高度自适应,并让IE6与IE7兼容,有什么更好的办法吗?前提要加上 <!DOCTYPE...>
    20  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • cngothic
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-11-09 15:58:581楼 得分:0
    你用到了。readonly="readonly" 无法修改。
    那你还不如把内容写进div尼。用div来做更容易。
    也许你要问。如何获取textarea的值。
    如asp:
    request.form("textarea")
    这样是无法获取的。
    1:你可以添加一个隐藏域存储request.form("textarea")的值。显示的时候用div来显示
    2:不采用隐藏域。你可以用js来实现document.getElementById("texttarea").innerHTML
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • lgzxz999
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-11-09 16:22:472楼 得分:0
    1.在代码里面把readonly="readonly"去掉后,在IE7下还是没效果
    2.我不用DIV来显示,是觉得如果是用textarea来发表的东西,用DIV显示会出现格式等问题,而用textarea加readonly会正常显示
    3.如果用DIV来显示的话,我也想知道用textarea怎么做到IE6,IE7兼容,呵呵,麻烦大家看一下
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • cngothic
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-11-09 23:36:513楼 得分:0
    怎么想的。textarea 你加上 readonly="readonly", textarea本身就无法再修改我不是说你删除后就能解决了你的问题。
    是无法改textarea内的内容。你不想改内容你干吗用textarea来做?头晕啊
    你是不想做图片而已。
    对于textarea还存在ie6,ie7的说兼容问题(你遇到过多少兼容性的问题尼?别见风就是雨。别听人家说中文在ie6与ie7也丰在兼容性的问题)。你是高人。头回听说。


    给你说个思路。textarea 换行符是什么?在JS中textarea 的换行符又是什么?
    document.getElementById("textarea").innerHTML 中有多少个换行符。
    用split来转化为数组。然后取数组上限+1
    textarea 中 显示的文字行高为多少应该是12px.你也可以记设置。
    (数组上限+1) * 行高 + 额外的 textarea 高度(这个取个适当就OK了)= textarea 的高度
    然后document.getElementById("textarea").style.height="textarea 的高度"

    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • lgzxz999
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-11-10 09:18:514楼 得分:0
    1.用textarea只是用来显示从数据库读出来的信息,不用再得到了
    2.我不是说textarea存在兼容问题,而是说textarea自适应高度,在IE6IE7FF中有兼容问题
    3.可能你保存数据库之前做了些转换,所以说用DIV显示可以得到相应的格式,
      我没有进行什么转换,所以觉得用DIV显示会出问题,这是我个人"觉得",而用textarea显示就不用管什么转换问题了
    4.
      用JS方法,我也在JS版发了帖,理论上讲问题已经解决了.你的方法也挺好
    5.
      我只是想知道
      在IE7下写
        <!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">
      和IE7下写
        <html>
      为什么会出现效果的区别哪?想听大家说说看法,是不是过渡的DTD的问题
    6.对于HTML和JS,写基本的可以,对于各浏览器兼容的写法还是菜的很,呵呵,cngothic再帮忙看一看,解决方法有了,我想听听你对出现这种区别的看法,是什么
      原因造成的哪
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • cngothic
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-11-10 10:38:135楼 得分:20
    对于HTML和JS,写基本的可以,对于各浏览器兼容的写法还是菜的很.

    没有完美的东西.只有更美.你也无法让浏览器他们都完全统一.写写针对主流的浏览器(IE6,IE7,FF)XHTML,JS完全可以.
    css中有hack写法.JS中肯定也有很多支持各各浏览器的写法.对于一般的函数等基本上所有的浏览器都支持.
    如像IE支持 函数A(), FF则不支持.那就换种思路去做来达到你想要的效果.本身FF就不支持函数A().没办法自己写个函数来达到想要的效果吧.
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • lgzxz999
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-11-10 14:59:556楼 得分:0
    JS我肯定会用,一点也没有排斥的意思..只是就这个问题而言我想知道什么原因造成的而已....辛苦辛苦,呵呵,我去结帖了
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • caritasem
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-11-24 20:50:577楼 得分:0
    呵呵,回答问题的很牛气啊
    修改 删除 举报 引用 回复

    网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
    北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
    世纪乐知(北京)网络技术有限公司 提供技术支持
    Copyright © 2000-2008, CSDN.NET, All Rights Reserved