如何禁用CKEditor对话框皮肤

How to disable CKEditor dialog skin?

本文关键字:对话框 CKEditor 何禁用      更新时间:2023-09-26

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

更新:所以更简单的问题是我如何删除继承CSS属性,打破我的设计?

请检查Firebug:

打开对话框窗口,右键单击包含外部内容的HTML元素,然后选择"Inspect element"。

在Firebug中,选择HTML面板,然后选择右侧的样式面板,并确保未选中"Only Show Applied Styles"选项。

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

样式表中的样式是否都有行来表示它们已被覆盖?

在过去,我使用来自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 :
            [

查看代码会更容易回答你的问题。

Be Well,