设置编辑器按钮的文字颜色



我有一些自定义按钮,我想样式每个按钮的文本是不同的。但是'style'选项设置了div的样式,而不是按钮,所以它不起作用。

下面是生成按钮 的代码
// Add a button for rank
editor.addButton('rank', {
    text: 'Rank',
    tooltip: 'Highlight Rank',
    icon: false,
    style:'color:red;',
    onPostRender: function () {
        var button = this;
        editor.on('NodeChange', function (e) {
            if (editor.formatter.match('rank')) {
                button.active(true);
            } else {
                button.active(false);
            }
        });
    },
下面是输出的html
<div id="mceu_0" class="mce-widget mce-btn mce-btn-small mce-first mce-last" tabindex="-1" aria-labelledby="mceu_0" style="color: red;" role="button" aria-label="Highlight Rank" aria-pressed="false">
<button role="presentation" type="button" tabindex="-1" >Rank</button></div>

谁能给我指出正确的选项,使用有样式应用到按钮?我需要为每个按钮设置不同的样式

你可以在按钮上创建一个带有后代选择器或子选择器的CSS类,并将其应用于TinyMCE的按钮设置classes:

tinymce.init({
    selector: "textarea",
    toolbar: "rank",
    setup: function (editor) {
        editor.addButton('rank', {
            text: 'Rank',
            tooltip: 'Highlight Rank',
            icon: false,
            classes: 'rank-button'
        });
    }
});
.mce-rank-button button {
  color: red !important;
}
<script src="http://tinymce.cachefly.net/4.2/tinymce.min.js"></script>
<form method="post" action="somepage">
    <textarea name="content" style="width:100%"></textarea>
</form>

最新更新