如何禁用CKEditor对话框皮肤?

时间:2011-09-22 16:43:42

标签: javascript css ckeditor mediawiki

我希望有人可以就此提出一些建议。 我有一个CKEditor 3.6对话框,其中包含一个html类型的单个元素,并加载一个外部页面(或实际上它的正文html内容)。该页面的样式表由MediaWiki 1.17资源加载器加载。我的问题是CKEditor皮肤优先于我的样式表。在firebug中,我甚至可以禁用CKEditor样式,并查看页面如何获得它的原始形状。 有没有办法可以为此对话框禁用CKEditor样式表或降低其优先级? 或者任何其他方式来解决这个问题? 任何想法将不胜感激。

更新:这么简单的问题是如何删除破坏我设计的继承CSS属性?

1 个答案:

答案 0 :(得分:1)

请用Firebug检查一下:

打开对话框窗口并右键单击包含外部内容的HTML元素,然后选择“检查元素”。

在Firebug中,选择HTML面板,然后选择右侧的“样式”面板,并确保未选中“仅显示应用样式”选项。

查看样式窗格右侧显示每个样式块的源文件,您是否看到样式表(来自资源加载器)提供了一些样式?

样式表中的样式是否都有通过它们的线条以表示它们已被覆盖?

过去,我使用HTML和样式窗格中的信息为样式创建更有针对性的选择器,您可以使用该方法覆盖编辑器样式。


请提供正在使用的代码:

外部HTML内容的结构是什么(包括任何类和ID或样式)?

整个区块是否包含在容器(div或table)中?

您的任何样式是否都是通过外部网页的<body>标记定位的?

对于对话框代码,您可以删除任何功能,除非它与.addClass()相关。只需显示选项卡的结构:

CKEDITOR.dialog.add( 'Plugin Name', function( editor )
{
  return {
    title : Plugin.title,
    minWidth : 350,
    minHeight : 230,
    contents : [
      {
        id : 'TabId',
        label : Lang.TabId,
        title : Lang.TabId,
        elements :
        [
          {
            id : 'ElementId',
            type : 'html',
            label : Lang.ElementId,
            title : Lang.ElementId,
            style : 'text-align: center;',
            html : '<div>' + Some Content + '</div>',
            children :
            [

查看代码可以更轻松地回答您的问题。

好吧,