0

我在使用 CK4 时遇到问题,并且无法在样式下拉列表中获取标题样式。

.css 应该由后端和前端共享,并使用#page 作为 css-id

有什么方法可以告诉下拉列表解析带有#page-prefix 的标题。

我正在使用

 CKEDITOR.config.bodyId = 'page';

和CSS

.cke_editable {
}

#page {
    /* works - editor area goes black..
    font-family:Arial;
    margin:10px;
    font-family:Arial;
    background-color:#000;
    font-size: 10px;
    color:#fff;

}

#page h1 {
   /* works in editor-area, but not dropdown */
    font-family: Verdana;
    color:#999;
}

.cke_editable h2 {
  /* same as h1.. */
    font-family:Arial;
    color:#f00;
    font-size:16px;
    background-color:#999;
}

h3 {
   /* work BOTH in editor and style shows in dropdown. */
    color:#0f0;
}
4

3 回答 3

0

我猜您将要使用stylesheetparser插件来解析其他选择器。此问题已在此处得到解答:CKEditor - Stylesheet Parser - Valid Selectors

这并不简单,但我相信你会设法做到这一点。祝你好运!

于 2013-01-15T15:23:01.937 回答
0

问题是 CKEditor 没有将 bodyId 和/或 bodyClass 应用于样式组合:http ://dev.ckeditor.com/ticket/7452

如您所见,该错误是在大约两年前报告的,并且大部分时间都没有开发人员的活动。

于 2013-01-15T19:20:47.277 回答
0

我通过解析 css 实现了一个可行的解决方案,例如

 #page h1 {...}

当连接到 CK 时:

['config']['css'] = 'parseMyCss.php?theFile=style.css

并在 parseMyCss (简化)中:

$s = file_get_contents($theFile);
$s = str_replace('#page ','', $s);
header('content-type:text/css');
echo $s;
于 2013-03-08T09:08:59.960 回答