求CKEditor默认字体设置问题,高分,立结!!!

cnuusw 2011-01-07 09:58:02
一B/S程序。要求使用CKEditor。在使用过程中发现一个问题,ckeditor的后台和前台表现形式不一致,不知道该从哪里设置,求助朋友们帮忙。 上图说明:


上图是不做任何设置时,ckeditor的默认输入效果。上图中 “测试”与“文本”两个词之间有10个空格,但是距离明显不够。


上图为ckeditor不做任何设置时,点击代码,看到的代码。如上所述,一共有10个空格。


上图为按照网上通用的办法修改过的ckeditor,将config.js中增加如下代码:

CKEDITOR.editorConfig = function( config )
{
// Define changes to default configuration here. For example:
// config.language = 'fr';
// config.uiColor = '#AADC6E';
//界面的语言配置 设置为'zh-cn'即可
config.font_names='宋体/宋体;黑体/黑体;仿宋/仿宋_GB2312;楷体/楷体_GB2312;隶书/隶书;幼圆/幼圆;微软雅黑/微软雅黑;'+ config.font_names;
config.defaultLanguage = 'zh-cn'
//默认的字体名 plugins/font/plugin.js
config.font_defaultLabel = '宋体';
};

但是,我发现,这样修改后,只是在字体下拉列表中增加了中文字体,并且字体下拉列表处,默认显示为宋体(但是不是默认设置为宋体)。宋体中的空格,仍旧没有解决。



上图为,从字体设置中,强制将字体设置为宋体,我们发现,此时,测试文字终于按照宋体的实际格式,每两个空格空出一个汉字的位置。这也是我想要的实际效果。


我需要朋友们帮助我解决的是:如何不用强制设置字体,就能够按照宋体格式(两空格空一个汉字的位置)去显示文本,并且当强制设置了字体后,又能够按照字体本身的格式去显示。
...全文
2029 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
bu在服务区 2011-10-24
  • 打赏
  • 举报
回复
[Quote=引用 15 楼 finder518 的回复:]
请问楼主的问题解决了吗?跪求解决方案
[/Quote]

同求................
finder518 2011-08-19
  • 打赏
  • 举报
回复
请问楼主的问题解决了吗?跪求解决方案
weimiaza 2011-06-20
  • 打赏
  • 举报
回复
设置完字体大小之后 就没问题
j3h1w5 2011-04-27
  • 打赏
  • 举报
回复
我的也有这个问题,无语啊,编辑器中显示的和提交之后显示的不一样
ycproc 2011-01-10
  • 打赏
  • 举报
回复
是否 前台的 css 影响了 编辑器的
86y 2011-01-10
  • 打赏
  • 举报
回复
其实如果有前台后台一致必须在你编辑的时候添加样式在你编辑内容里面。这样前台才可能一致。
就不会导致前台控制会覆盖了!
  • 打赏
  • 举报
回复
为这个就改,恐怕以后还会有麻烦。
其实只要用全角的“ ”来代替空格就可以了。让编辑输入的人员注意这一点就行了。
86y 2011-01-10
  • 打赏
  • 举报
回复
你看下你编辑器里面的内容有加载什么样式。再改那样式就可以了。

但是前台显示效果跟后台还是有区别的,(前台跟编辑器的样式不一样)
只有在编辑里面编辑的时候自己添加样式
<div style="font-family:'微软雅黑'">内容</div>
这样前台才显示跟后台是一样的。
cnuusw 2011-01-08
  • 打赏
  • 举报
回复
再次补充:经对比发现: 在不指定任何字体时(css文件的代码也删除,同时删除ie缓存)默认字体是Times New Roman, Times, serif
cnuusw 2011-01-08
  • 打赏
  • 举报
回复
是在测试页面下直接看效果,已删除全部css。排除css干扰问题,我感觉可能是需要给ckeditor注册中文字体才行,
yhtapmys 2011-01-08
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 cnuusw 的回复:]
补充,刚刚楼上的朋友说的不是一点也没作用,如果是英文字体,确实会变化,但是中文字体,就是没反应。
[/Quote]

估计楼主整站里还有其他的CSS文件中有
body
{
...
}
影响
我测试的时候发现我这里有3个CSS里body呢
这可能会影响编辑器里的字体样式

楼主可用Firefox的fireBug看下具体还有那些body
cnuusw 2011-01-08
  • 打赏
  • 举报
回复
补充,刚刚楼上的朋友说的不是一点也没作用,如果是英文字体,确实会变化,但是中文字体,就是没反应。
cnuusw 2011-01-08
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 yhtapmys 的回复:]

如何不用强制设置字体,就能够按照宋体格式(两空格空一个汉字的位置)去显示文本,并且当强制设置了字体后,又能够按照字体本身的格式去显示。------------------------------------
很简单...
修改 ckeditor/contents.css 里的
/*
Copyright (c) 2003-2010, CKSource - Frederico Knabben……
[/Quote]

感谢这位朋友的回答,此处我也修改过,还是不起作用,我看网上也有人提到改这里,但是我改完确实无效,难道和CKEditor的版本有关?
yhtapmys 2011-01-08
  • 打赏
  • 举报
回复
如何不用强制设置字体,就能够按照宋体格式(两空格空一个汉字的位置)去显示文本,并且当强制设置了字体后,又能够按照字体本身的格式去显示。------------------------------------
很简单...
修改 ckeditor/contents.css 里的
/*
Copyright (c) 2003-2010, CKSource - Frederico Knabben. All rights reserved.
For licensing, see LICENSE.html or http://ckeditor.com/license
*/

body
{
/* Font */
font-family: Arial, Verdana, sans-serif;==>宋体;
font-size: 12px;

/* Text color */
color: #222;

/* Remove the background color to make it transparent */
background-color: #fff;
}
yhtapmys 2011-01-08
  • 打赏
  • 举报
回复
我这边IE8/FF看了下 好像可以了 不知你那边如何?
yhtapmys 2011-01-08
  • 打赏
  • 举报
回复
CKEDITOR.config.font_style =
{
element : 'span',
styles : { 'font-family' : '宋体' },
overrides : [ { element : 'font', attributes : { 'face' : null } } ]
};

再不行那就没办法鸟,英文版的,对中文支持有点那个。
用FB看中文属性,都是黑框框问号...

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧