如何设置tinymce文本区域的高度?

时间:2013-07-23 13:21:06

标签: html css tinymce

我使用以下内容:

    <textarea
    data-ui-tinymce="tinymceOptions"
    data-ng-disabled="modal.action=='delete'"
    data-ng-model="modal.formData.text"
    id="inputText"
    rows="20"
    required></textarea>

当出现tinymce时,身高只有几厘米。如何在首次出现时更改默认值的高度?

以下是我正在使用的选项列表:

selector: "textarea",           
plugins: [
                        "advlist autolink autosave link image lists charmap print preview hr anchor pagebreak spellchecker",
                        "searchreplace wordcount visualblocks visualchars code fullscreen insertdatetime media nonbreaking",
                        "table contextmenu template textcolor paste fullpage textcolor"
                ],

                toolbar1: "bold italic underline strikethrough | alignleft aligncenter alignright alignjustify | styleselect fontselect fontsizeselect",
                toolbar2: "cut copy paste | searchreplace | bullist numlist | outdent indent blockquote | undo redo | code | inserttime preview | forecolor backcolor",
                toolbar3: "table | hr removeformat | subscript superscript | charmap | print fullscreen | spellchecker | visualchars visualblocks nonbreaking template pagebreak restoredraft",

                menubar: false,
                toolbar_items_size: 'small',

                templates: [
                        {title: 'Test template 1', content: 'Test 1'},
                        {title: 'Test template 2', content: 'Test 2'}

6 个答案:

答案 0 :(得分:11)

来自javascript

tinymce.init({
   selector: 'textarea',
   height: 200
});

或来自html

<textarea style="height: 200px;">

答案 1 :(得分:5)

您应该在CSS中设置容器对象的高度:

#inputText {
    height : 10000000px;
}

答案 2 :(得分:1)

对于tinyMCE版本之前 4.X然后此代码正在运行

tinyMCE.init({
    ...,
    setup: function(editor) {
        editor.onInit.add(function() {
            var width = editor.getWin().clientWidth;
            var height = 50;

            editor.theme.resizeTo(width, height);
        });
    }
});

对于tinyMCE版本4.X和之后,则此代码正常工作

tinyMCE.init({
   setup: function (ed) {
      ed.on('init', function(args) {
         var id = ed.id;
         var height = 25;

         document.getElementById(id + '_ifr').style.height = height + 'px';
      });
   }
});

答案 3 :(得分:0)

它适用于我(参见 setTimeout 部分)

&#13;
&#13;
$(function () {
    window.init_tinymce = function (id, custom_config) {
        var textarea = $('#' + id);

        // Default TinyMCE configuration
        var basic_config = {
            mode: 'none',
            plugins: "link",
            menu: 'none',
            toolbar: 'bold | formatselect | link'
        };

        tinymce.init($.extend(basic_config, custom_config));
        ...

        setTimeout(function(){ //wait for tinymce to load
            console.log('timeout');
            $(tinymce.editors[0].iframeElement).contents().find('body')
                .css('min-height', $(tinymce.editors[0].contentAreaContainer).height() * .9);
        }, 1000);
    };
});
&#13;
&#13;
&#13;

答案 4 :(得分:0)

对于TinyMCE的全局高度设置,请编辑Django项目的settings.py:

TINYMCE_DEFAULT_CONFIG = {'height': 120}

对于每个小部件设置,请在表单类中使用mce_attrs

input = forms.CharField(widget=TinyMCE(mce_attrs={'height': 120}))

用django-tinymce 2.7.0测试。

引擎盖:您可以在为textarea生成的HTML的data-mce-conf属性中看到&quot;height&quot;: 120,之类的字符串。否则,出现问题。

答案 5 :(得分:0)

将此CSS添加到您的自定义样式表中,否则将降低所有现有编辑器的高度。

.mce-edit-area iframe {
    max-height: 200px;
}