我希望有人可以就此提出一些建议。 我有一个CKEditor 3.6对话框,其中包含一个html类型的单个元素,并加载一个外部页面(或实际上它的正文html内容)。该页面的样式表由MediaWiki 1.17资源加载器加载。我的问题是CKEditor皮肤优先于我的样式表。在firebug中,我甚至可以禁用CKEditor样式,并查看页面如何获得它的原始形状。 有没有办法可以为此对话框禁用CKEditor样式表或降低其优先级? 或者任何其他方式来解决这个问题? 任何想法将不胜感激。
更新:这么简单的问题是如何删除破坏我设计的继承CSS属性?
答案 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 :
[
查看代码可以更轻松地回答您的问题。
好吧,
乔