如何让ckeditor显示bootstrap图标

时间:2013-03-21 18:35:48

标签: ruby-on-rails ckeditor

我在我的application.js和mystyle.css中导入的引导程序中运行了在Ruby on Rails中运行的CKEDITOR textarea中的以下行的锚标记:

<a href="#" toggle="tooltip" title="Here!"> <i class="icon-pencil"> </i> </a>

但CKEDITOR textarea不会显示引导铅笔图标,但是,如果我检查源,锚标签就在那里。如果我渲染文件,它会正确显示铅笔图标。但只是没有显示在ckeditor textarea! (简直不是所见即所得。)我错过了什么?我需要在ckeditor css和/或config.js中导入bootstrap吗?怎么样?还有什么?请帮忙。非常感谢。

以下是生成的html代码:

<p>This is a test<a href="#" title="Here!" toggle="tooltip"> <i class="icon-pencil"> </i> </a></p>

感谢。

感谢Nenotlep的提示。你提到的正是我所怀疑的。但是我仍在努力在content.css中添加bootstrap的位置和方法:这就是我在Gem文件中包含引导程序的内容:

gem 'bootstrap-sass', '~> 2.3.1.0'

在我的app / assets / javascripts / application.js中,我有:

//= require jquery
//= require jquery_ujs
//= require jquery.min
//= require bootstrap-tooltip
//= require bootstrap-popover
//= require bootstrap
//= require ckeditor/init
//= require_tree .

在app / assets / stylesheets / mystyle.css.scss中,我有:

@import "bootstrap";

我检查了我的app / assets目录,我无法在任何地方找到ckeditor子目录。所以我尝试创建一个名为app / assets / stylesheets / ckeditor的目录,然后在其下面添加一个名为contents.css的文件,并在文件中添加一行,如下所示:

@import "bootstrap";

然后再试一次,结果仍然是相同的:ckeditor textarea中仍然缺少bootstrap铅笔图标。我从本地运行的rails服务器获得的错误消息是:

Started GET "/assets/ckeditor/bootstrap" for 127.0.0.1 at 2013-03-22 17:35:23 -0700
Served asset /ckeditor/bootstrap - 404 Not Found (7ms)
ActionController::RoutingError (No route matches [GET] "/assets/ckeditor/bootstrap"):

我知道ckeditor无法触及引导程序,但只是不知道如何配置ckeditor以包含bootstrap .....,任何帮助都表示赞赏。感谢。

2 个答案:

答案 0 :(得分:2)

听起来像定义要显示的图标的CSS在CKEditor中不活动。您的安装目录中有一个名为contents.css的类,其中包含CKEditor内部事物的CSS定义。插入你的图标CSS,显然是在mystyle.css中。

CKEditor不会从它的父页面继承类,因为它在一个框架中运行。

答案 1 :(得分:1)

使用'bundle show'找出已安装的ckeditor目录所在的位置(如果使用Gemfile安装ckeditor):

bundle show ckeditor
例如,在我的机器中,它返回以下目录:

/usr/local/lib/ruby/gems/1.9.1/gems/ckeditor-4.0.2

cd到上面的目录并打开vendor / assets / javascripts / ckeditor / contents.css文件并在文件顶部添加一行以将bootstrap集成到ckeditor中,如下所示:

@import "bootstrap";

就是这样。您可能需要重新启动服务器(rails s)才能显示效果。