Ckeditor addStylesSet如何与css内容交互?

Ckeditor addStylesSet如何与css内容交互?,ckeditor,Ckeditor,我已将我的CKEditor 3.6的contents.css文件重定向到我网站的样式表: CKEDITOR.config.contentsCss = '/css/style.css'; 现在,我想将该样式表中的一些样式添加到下拉框中,供用户在编辑内容时选择。以前的开发人员创建了以下内容: CKEDITOR.addStylesSet( 'cms_styles', [ { name : 'Page Header', element : 'h2' }

我已将我的CKEditor 3.6的contents.css文件重定向到我网站的样式表:

 CKEDITOR.config.contentsCss = '/css/style.css';
现在,我想将该样式表中的一些样式添加到下拉框中,供用户在编辑内容时选择。以前的开发人员创建了以下内容:

CKEDITOR.addStylesSet( 'cms_styles',
[
    {
        name : 'Page Header',
        element : 'h2'
    },

    {
        name : 'Page Text',
        element : 'p'
    },
它似乎有效,但对我来说意义不大。如果类名不能有空格,这些样式从何而来?如果我们只是在下拉列表中添加样式,为什么要指定元素?谷歌没有发现addStylesSet的好结果,我发现的开发者指南()也不是很具体


我不想显示所有可用的类;只有我们定义的几个。

样式对象上的
名称
属性仅用于显示目的,它不会以任何方式进入内容。以前的开发人员创建的东西之所以有效,是因为这些样式只是指定了元素,而css很可能使用这些元素说明符定义了样式

正在设置
元素
属性,以便CKEditor知道如何将该样式应用于内容。如果您的
元素
属性的样式值为
p
,则该样式将成为块样式,并将应用于内容中当前活动的
p
块。如果
元素
属性的值为
span
,则样式将仅应用于所选文本(如果不存在
span
元素,则样式将被其包围)

要在下拉列表中获取样式以表示外部css中的类,您需要将样式对象添加到样式集,并将其设置为应用样式的元素的
class
属性。通过设置样式对象的
属性
属性,可以让CKEditor添加或修改其应用样式的元素的属性。出于我们的目的,我们希望设置
属性
属性,以便应用css中定义的类

CSS:

CKEditor样式集数组:

[
    {
        name: "My Block Style", 
        element: "p", 
        attributes: { 
            "class": "myBlockStyle" 
        }
    }
]
请注意,
class
属性的名称被引用,因为
class
是保留关键字

[
    {
        name: "My Block Style", 
        element: "p", 
        attributes: { 
            "class": "myBlockStyle" 
        }
    }
]