帝王谷资源网 Design By www.wdxyy.com

在IE下,我们写一个固定高度和宽度的textarea,给一个select,可以选择字体大小并作用于textarea。

在非IE浏览器下,textarea原始字号为18px,将这个textarea中的文字的font-size改为108时是这个样子的:

IE下textarea中font-size值很大时文字不显示的解决方法

但是在IE下确是这个样子的:

IE下textarea中font-size值很大时文字不显示的解决方法

在网上找解决方法,不过貌似很少有人遇到这种情况,于是一个一个组合css去试,最终找到了一个解决方法,不过导致这种情况的原因至今不详。

解决方法:

在IE浏览器下,在将font-size改为108px之后,将textarea的宽度设为0,然后再设回原来的宽度即可。

我猜测的原因是在原始的宽度中,将字体变得很大,IE浏览器对字体所占的宽度的计算有bug。

然而将宽度设为0之后,再设为原始宽度,则IE浏览器会重新计算一次字体的宽度,此时就正常了。

具体的javascript代码如下:

复制代码代码如下:
var width = $("textarea").css("width");
$("#txt-area").css("width", "0%");
setTimeout(function () {
$("#txt-area").css("width",<span style="font-family:Arial, Helvetica, sans-serif;">width</span>);
}, 20);

如果这里不延迟20秒设回原来的高度,也会在某些情况下失败,具体原因有待考证。

标签:
IE,textarea,font-size

帝王谷资源网 Design By www.wdxyy.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
帝王谷资源网 Design By www.wdxyy.com