通过ckeditor添加的表不会保留style属性

时间:2017-11-15 10:12:35

标签: javascript css html-table ckeditor

我在一个网页中集成了ckeditor,该网页使用表插件允许用户在编辑器窗口中创建表。当用户退出编辑器窗口并且结果显示在页面上时,表格宽度有时会比网页宽得多。

我进行了更改,以便编辑器允许样式标记,如:

CKEDITOR.replace('editor', {
    extraAllowedContent: 'table{*}'
});

还对ckeditor的config.js进行了此更改,使表的默认宽度为100%:

CKEDITOR.on('dialogDefinition', function (ev) {
    var dialogName = ev.data.name;
    var dialogDefinition = ev.data.definition;
    if (dialogName == 'table') {
        var info = dialogDefinition.getContents('info');
        info.get('txtWidth')['default'] = '100%';  
    }
});

但是我无法将表格布局设置为固定,因此当网页上显示表格时,表格会在网页上以100%宽度固定。

1 个答案:

答案 0 :(得分:0)

如果从CKEditor中提取数据时表格有width:100%(您可以通过editor.getData method验证它),则其宽度取决于它在网站上放置的父元素宽度。如果父元素(直接或非元素)具有固定宽度,则表格不应超出它。

请参阅此代码:https://codepen.io/f1ames/pen/ZaaRPy

如果上述答案不够,也许您可​​以分享HTML代码或准备一些显示问题的代码段?