在Diazo'ed Plone网站上使用TinyMCE

时间:2014-02-10 19:40:31

标签: css tinymce plone diazo

我原本以为TinyMCE应该保持不受Diazo主题的影响,但是某些地方的某些CSS漏洞并使某些功能难以使用。下面是一个这样的例子,所有行上的行高变得超短,使得每行难以选择。

enter image description here

在Firebug中,我可以通过在此添加最小高度值来修复此问题,在 dialog.css 中设置一个值:

.radioscrolllist .list {min-height: 2em;}

但是,我无法找到实际设置的位置并坚持下去。我已经尝试将它放在Diazo主题 style.css 中,在 ploneCustom.css 中,并自定义 portal_skins / tinymce / themes / advanced / skins / plone /dialog.css portal_skins / tinymce / plugins / plonebrowser / css / plonebrowser.css - 这些似乎都没有做到这一点。

有关如何/在何处进行此修复的任何想法?问题只出现在网站的Diazo版本上,而不是来自未经修改的版本。看起来加载在TinyMCE iframe上的唯一CSS文件是:

  • dialog.css
  • plonebrowser.css
  • columns.css

3 个答案:

答案 0 :(得分:4)

这就是我在我的项目CSS中处理类似问题的方法,尽管我发现每个项目都有不同的问题,这取决于我对一般CSS&特别是列:

/* Fix TinyMCE gremlins */
#internallinkcontainer div.row {
    /* Image browser was jumbled */
    float: none;
}
#content #internallinkcontainer .list.item span, 
#content #internallinkcontainer .list.item a {
    /* Link browser was packed too much */
    position: inherit;
}
#internallinkcontainer input[type="radio"] {
    vertical-align:     middle;
}

/* @end */

我的链接浏览器再次看起来像这样:

Tiny MCE tidied up

除了Diazo-CSS的麻烦之外,听起来你可能遇到了麻烦 plone.css被缓存。以下内容来自developer manual,我自己已经修改过,尚未提及。

plone.css

plone.css是基于完整的portal_css注册表配置动态自动生成的。它用于例如TinyMCE一次性将所有CSS样式加载到TinyMCE中。它不用于普通的Plone页面。

plone.css代:

https://github.com/plone/Products.CMFPlone/blob/master/Products/CMFPlone/skins/plone_scripts/plone.css.py

注意: plone.css是由dialog.css导入的,它会从普通Plone页面的浏览器刷新中“隐藏”它,即使Plone处于开发模式。这意味着在开发主题时,您可能会发现在TinyMCE插件中没有看到CSS更新(例如在链接/图像浏览器中)。如果是这种情况,那么只需在浏览器中直接进行硬刷新:/plone.css即可清除缓存版本。

答案 1 :(得分:2)

上周我刚遇到同样的问题。我的解决方法是在我的主题CSS中添加它(tinymce对话框不是包含正在编辑的内容的iframe的一部分;它们位于主框架中):

#internallinkcontainer.radioscrolllist { line-height: auto !important; }
#internallinkcontainer .list.item span, #internallinkcontainer .list.item a { position: static !important; }

(显然我们应该找到一个不那么狡猾的解决方案,但我没有机会。)

答案 2 :(得分:1)

你几乎自己回答:你可以自定义column.css,这样就可以了,不需要重要的声明。

此外,这似乎与Diazo无关,ploneCustom.css也不会被发送到非重氮网站的对话窗口,嗯。