2013-02-06 104 views
0

我有一个textarea,我使用“moono”皮肤替换为CKEditor 4.1实例。 问题是,即使当我配置CKEditor实例为100%其工具栏 增加我的宽度取决于其按钮数量。CKEditor 4 textarea替换 - 工具栏增加文本区宽度

从我的研究我明白,它的发生是因为在“moono”皮肤 “editor.css”文件中有一个“白色空间:nowrap;”在所有的元素和这个定义 正在阻止“.cke_toolbar”对象进入一个新的行,即使是浮动。

注:

  1. 问题存在仅当父对象是一个表对象,这就是为什么它可以增加其宽度。
  2. 默认的CKEditor宽度是100%,当它说编辑器获得父pbject宽度,所以在我的情况下,我不需要为编辑器设置宽度(或者我可以设置100%),它需要获得父宽度。
  3. 为了证明问题出在工具栏上,您可以取消SJFiddle项目中的javascript注释行,并看到编辑器获得了正确的宽度。
  4. 在我的情况下,我不能在工具栏上使用新行,因为textarea的宽度取决于用户。

是否有办法使用CKEditor配置修复它,或者我必须编辑 “editor.css”并删除“white-space:nowrap;”从“.cke_toolbar”手动? 我不喜欢手动操作,因为我不喜欢随时修复CKEditor版本。

jsfiddle.net/royshoa/9c2Xp/2/

回答

1

CKEditor的不会继承textarea的宽度它替换。你需要明确地告诉它的宽度。

在YOUT的jsfiddle这足以补充:

<script>CKEDITOR.config.width = 250;</script> 

,这将是250像素宽。

了解更多关于设置配置:http://docs.ckeditor.com/#!/guide/dev_configuration

更新

你遇到过这个问题CKEditor - Editor Width Overflows in Webkit Browsers

它已经被报告http://dev.ckeditor.com/ticket/9947,补丁应该在4.0周左右发布,所以大约2周。

+0

很抱歉,您的回答不正确。 如果使用宽度:'100%',它将自动采用父对象宽度 。默认的宽度值是100%,所以我不需要 设置宽度。 但是,我更新了JSFiddle项目更容易理解 ,我发现一个细节 - 当父对象是一个表对象时存在这个问题,这就是为什么white-space:nowrap增加它的原因。 http://jsfiddle.net/royshoa/9c2Xp/2/ –

+0

我更新了我的答案。你遇到过已知的问题。 – Reinmar

+0

非常感谢!我会等待下一个版本。 –