CKEditor去除HTML元素自动换行代码
原创当我们使用DedeCMS v7.5 sp2版本默认的是CKEditor,编辑内会产生换行符号 /n ,比如输入<p>标签,源代码会变成
<p> Hallo World!</p>
对代码进行必要的压缩才能在打开页面速度上有提升,修改CKEditor编辑器的设定档就可以解决这个问题。
打开下列目录/include/ckeditor/config.js,找到如下代码
config.autoParagraph = false; config.enterMode = CKEDITOR.ENTER_BR; config.shiftEnterMode = CKEDITOR.ENTER_P; };
在尾端加上代码
CKEDITOR.on( 'instanceReady', function( ev ){ with (ev.editor.dataProcessor.writer) { setRules("p", {indent : false, breakBeforeOpen : false, breakAfterOpen : false, breakBeforeClose : false, breakAfterClose : false} ); setRules("h1", {indent : false, breakBeforeOpen : false, breakAfterOpen : false, breakBeforeClose : false, breakAfterClose : false} ); setRules("h2", {indent : false, breakBeforeOpen : false, breakAfterOpen : false, breakBeforeClose : false, breakAfterClose : false} ); setRules("h3", {indent : false, breakBeforeOpen : false, breakAfterOpen : false, breakBeforeClose : false, breakAfterClose : false} ); setRules("h4", {indent : false, breakBeforeOpen : false, breakAfterOpen : false, breakBeforeClose : false, breakAfterClose : false} ); setRules("h5", {indent : false, breakBeforeOpen : false, breakAfterOpen : false, breakBeforeClose : false, breakAfterClose : false} ); setRules("div", {indent : false, breakBeforeOpen : false, breakAfterOpen : false, breakBeforeClose : false, breakAfterClose : false} ); setRules("table", {indent : false, breakBeforeOpen : false, breakAfterOpen : false, breakBeforeClose : false, breakAfterClose : false} ); setRules("tr", {indent : false, breakBeforeOpen : false, breakAfterOpen : false, breakBeforeClose : false, breakAfterClose : false} ); setRules("td", {indent : false, breakBeforeOpen : false, breakAfterOpen : false, breakBeforeClose : false, breakAfterClose : false} ); setRules("iframe", {indent : false, breakBeforeOpen : false, breakAfterOpen : false, breakBeforeClose : false, breakAfterClose : false} ); setRules("li", {indent : false, breakBeforeOpen : false, breakAfterOpen : false, breakBeforeClose : false, breakAfterClose : false} ); setRules("ul", {indent : false, breakBeforeOpen : false, breakAfterOpen : false, breakBeforeClose : false, breakAfterClose : false} ); setRules("ol", {indent : false, breakBeforeOpen : false, breakAfterOpen : false, breakBeforeClose : false, breakAfterClose : false} ); } })
保存后记得清除浏览器cookie,这样编辑器产生的原码,就会不断行的输出。上面的代码完全没有断行,或许在用源码编辑的时候检查比较麻烦,建议一个HTML标签后断行,每个标签就是一行,清晰得多。如下
<p>文字行</p> <div>文字行</div> <img src="1.jpg"/>
参数说明
indent (是否加入空白 TAB) breakBeforeOpen (插入起始原始码标签之前是否断行) breakAfterOpen (插入起始原始码标签之后是否断行) breakBeforeClose (插入结尾原始码标签之前是否断行) breakAfterClose (插入结尾原始码标签之后是否断行) false(否) true(是)
扩展阅读
- DedeCMS移动栏目导航channelartlist判断当前栏目错误
- DedeCMS更换内容模型后文章不显示无损迁移数据
- DedeCMS表单自定义字段地区三级联动下拉选择修改优化版
- DedeCMS显示当前访问用户地域PHP方法
- DedeCMS自定义表单导出当天、两天的部分Excel数据
- DedeCMS缩略图引用HTTPS站外图片显示错误
- DedeCMS自定义表单批量审核增加删除全选取消全选按钮
- DedeCMS上传图片相对路径改为绝对路径有效处理办法
- DedeCMS实现URL不变PC和移动端展示不同模板
- DedeCMS不能正常删除栏目及文件夹的解决方案
- 网页防止360浏览器画词选中禁用CTRL+C复制
- DedeCMS网站搬家后有效解决列表无法调用子栏目内容
本文地址:https://www.vi586.com/web/489.html
版权声明:原创文章,版权归重庆SEO吖七所有,欢迎分享本文,支持原创,转载请保留出处
赞
赞(89)