CKEditor4配置与开发详细中文说明文档(11)

目前,我们只是为几个编辑器功能定义了内容转换,但是在将来发布的版本中数量会增加。

允许内容规则(Allowed Content Rules)

注意:高级内容过滤器是在CKEditor 4.1中引入的。

简介

允许内容规则定义了允许哪些HTML元素、属性、样式和类。当配置CKEditor时,你将对设置CKEDITOR.config.allowedContent选项最感兴趣。插件开发人员也需要设置CKEDITOR.config.allowedContent属性,告诉编辑器在自动模式中一项功能所允许哪些内容。
允许内容规则通常包括四个主要部分:

  •  允许的元素,

  •  这些元素可以有的属性,

  •  这些元素可以有的样式,

  •  这些元素可以有的类。

注意:替代书写“属性(attributes)、样式(styles)和类(classes)”,使用“属性”(properties)作为简便的描述方法。

对于一个元素可以存在多项规则,一个元素可以被包含在多个元素列表中。例如,每一个规则可以允许另一元素属性集。
规则是一个一个地应用的。初始时,被过滤的元素是无效的,其所有属性都被拒绝。应用于该元素的第一条规则校验它(它不会被删除),并且该规则可能接受某些元素的属性。另一条规则可能使编辑器接受更多的元素属性。因此:

  • 如果一个元素不存在规则,则删除它。

  • 可能接受一个元素,但拒绝其所有的属性,然后就被删除。

  • 一旦被验证,一个元素和它的属性不能被另一规则使之失效。

字符串格式(String Format)

字符串格式是允许内容规则的紧凑表示法,但它没有提供对象格式中可用的所有功能。但是,在大多数情况下,应该够用了。
规则格式:

elements [attributes]{styles}(classes) 

正则表达式模板:  

<elements><styles, attributes, and classes><separator>
/^([a-z0-9*\s]+)((?:\s*\{[!\w\-,\s\*]+\}\s*|\s*\[[!\w\-,\s\*]+\]\s*|\s*\([!\w\-,\s\*]+\)\s*){0,3})(?:;\s*|$)/i, 

其中:

  • elements – 一列由空格分隔的元素名或一个星号(*)字符,

  • attributes –一列由逗号分隔的属性名或一个星号(*)字符,

  • styles –一列由逗号分隔的样式名或一个星号(*)字符,

  • classes –一列由逗号分隔的类或一个星号(*)字符,

特殊字符:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/269.html