覆盖自动生成的css



我使用的是Jquery wysiwyg编辑器,它在运行时会自动将代码添加到文本区域。

我的问题是,它插入了一个style="width:320px"的内联样式,我需要去掉它,因为我已经设置了样式,使其达到100%

有没有用jquery 删除或覆盖该代码

它基本上是用一个名为wysiwyg的类向div添加一个内联样式。。。

所以:

<div class="wysiwyg" style="width:320px">

我遇到麻烦的编辑器名为:jWYSIWYG

这里有一个演示网址:http://akzhan.github.com/jwysiwyg/help/examples/

如果要覆盖内联样式,有两个选项:

纯CSS:

.wysiwyg {
    width: 120px !important;
}

jQuery:

$(".wysiwyg").css({width:120});

如果你想使用其他地方的风格,你也可以这样做:

$(".wysiwyg").css({width:"inherit"});

使用jQuery:重置width

$('.wysiwyg').css('width', '100%');

或者,您可以完全删除style属性:

$('.wysiwyg').removeAttr('style');

您是否尝试过用声明自己的CSS

!important

例如。

#textarea-id { width: 300px !important; }

您可以使用定义一个新的css规则!重要,或者使用jquery:

$("rule target").width(value);

这应该适用于您:

$('.wysiwyg').removeAttr("style");

或者,您可以将宽度设置为100%

$('.wysiwyg').css("width", "100%");

如果您有服务器端DOM操作模块,您可以使用removeAttribute() DOM方法删除服务器端不需要的属性。

或者,您可以尝试创建自己的所见即所得JS模块的略微修改版本。

最新更新