tinymce inserting span в теги списка

I have some text in tinymce editor inside

tags, nothing else, no classes, no styles. When I select the text and click the Unordered List button, then the

become a list. But every

  • looks like this:
    • Некоторые тексты ...
    • Откуда берутся эти стили, какой вариант конфигурации tinymce, какой файл, что угодно? Я хочу, чтобы кнопка «Список» просто добавляла теги html в список без каких-либо пробелов и стилей.

      Вот моя конфигурация tinymce. Конфигурация копируется непосредственно из инспектора Chrome (поэтому в вложенных реквизитах нет отступов): (точка останова была на линии 13547, в операторе tinymce.add (t); в tiny_mce_src.js)

      settings: Object
      accessibility_focus: true
      accessibility_warnings: false
      add_form_submit_trigger: true
      add_unload_trigger: true
      apply_source_formatting: 0
      bodyClass: "wysiwygeditor"
      button_tile_map: true
      content_css: "/sites/all/themes/adaptivetheme/at_core/css/at.layout.css,/sites/all/themes/atsl/css/global.base.css,/sites/all/themes/mytheme/css/global.styles.css
      convert_fonts_to_spans: 1
      convert_urls: false
      delta_height: 0
      delta_width: 0
      dialog_type: "modal"
      directionality: "ltr"
      doctype: ""
      document_base_url: "/"
      entities: "quot,apos,amp,lt,gt,nbsp,iexcl"
      entity_encoding: "named"
      extended_valid_elements: ""
      fix_table_elements: true
      font_size_legacy_values: "xx-small,small,medium,large,x-large,xx-large,300%"
      font_size_style_values: "xx-small,x-small,small,medium,large,x-large,xx-large"
      forced_root_block: "p"
      formats: Object
      hidden_input: true
      id: "edit-body-und-0-value"
      ie7_compat: true
      indent: "simple"
      indent_after: "p,h1,h2,h3,h4,h5,h6,blockquote,div,title,style,pre,script,td,ul,li,area,table,thead,tfoot,tbody,tr,section,article,hgroup,aside,figure,option,optgroup,datalist"
      indent_before: "p,h1,h2,h3,h4,h5,h6,blockquote,div,title,style,pre,script,td,ul,li,area,table,thead,tfoot,tbody,tr,section,article,hgroup,aside,figure,option,optgroup,datalist"
      indentation: "30px"
      inline_styles: true
      language: "en"
      mode: "none"
      object_resizing: true
      padd_empty_editor: true
      paste_auto_cleanup_on_paste: 0
      plugins: "style,-codemagic"
      popup_css: ""
      preformatted: 1
      relative_urls: true
      remove_linebreaks: 1
      remove_script_host: true
      render_ui: true
      skin: "thebigreason"
      strict_loading_mode: true
      style_formats: Object
      submit_patch: true
      table_inline_editing: false
      table_styles: Array[0]
      theme: "advanced"
      theme_advanced_blockformats: "p,h3,h4"
      theme_advanced_buttons1: "bold,italic,underline,justifyleft,justifycenter,justifyright,separator,bullist,numlist,indent,outdent"
      theme_advanced_buttons2: "link,image,media,charmap,blockquote,separator,formatselect,removeformat,styleselect,codemagic"
      theme_advanced_buttons3: ""
      theme_advanced_resize_horizontal: 0
      theme_advanced_resizing: 1
      theme_advanced_resizing_use_cookie: false
      theme_advanced_statusbar_location: "bottom"
      theme_advanced_toolbar_align: "left"
      theme_advanced_toolbar_location: "top"
      url_converter: function (url, name, elm) {
      url_converter_scope: tinymce.create.Editor
      validate: true
      verify_html: true
      visual: true
      width: "100%"
      

      Где «форматы» выглядят так:

      formats: Object
      aligncenter: Object
      classes: "align-center"
      selector: "p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img"
      __proto__: Object
      alignleft: Object
      classes: "align-left"
      selector: "p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img"
      __proto__: Object
      alignright: Object
      classes: "align-right"
      selector: "p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img"
      __proto__: Object
      forecolor: Object
      classes: "forecolor"
      inline: "span"
      styles: Object
      __proto__: Object
      hilitecolor: Object
      classes: "hilitecolor"
      inline: "span"
      styles: Object
      __proto__: Object
      strikethrough: Object
      inline: "line-through"
      __proto__: Object
      underline: Object
      classes: "underline"
      exact: true
      inline: "span"
      __proto__: Object
      __proto__: Object
      

      «Форматы стиля»:

      style_formats: Object
      blink: Object
      attributes: Object
      class: "blink"
      __proto__: Object
      inline: "span"
      title: "Blink"
      __proto__: Object
      __proto__: Object
      
  • 6
    nl ja de
    можете ли вы разместить свою конфигурацию tinymce? создание неупорядоченных списков без прокрутки должно работать liek в примере tinymce: tinymce.com/tryit/full.php
    добавлено автор Thariama, источник
    вы, кулаки, используете это предложение для доступа к вложенной информации: JavaScript "> stackoverflow.com/questions/957537/…
    добавлено автор Thariama, источник
    Я обновил оригинальный пост этой информацией.
    добавлено автор camcam, источник
    О нет. У него нет вложенных объектов, таких как style_formats ... Проблема в том, что я не знаю, как выгрузить окончательную конфигурацию из Drupal, со всеми плагинами и пользовательскими настройками. Я попытаюсь выяснить, как это сделать Это.
    добавлено автор camcam, источник
    Я видел это, вход в консоль создает ту же проблему - вложенные объекты не расширяются. Но я уже сделал это вручную и добавил форматы и стильные форматы внизу.
    добавлено автор camcam, источник

    2 ответы

    Looks like i found a solution to your problem: http://martinsikora.com/how-to-make-tinymce-to-output-clean-html

    Ключ заключается в использовании extended_valid_elements . Это приведет к удалению всех интервалов без атрибута класса

    extended_valid_elements : "span[!class]"
    
    6
    добавлено
    sry, у меня нет другого решения, тогда
    добавлено автор Thariama, источник
    Это не работает
    добавлено автор Anand Somasekhar, источник
    Я видел это решение раньше. Тем не менее, я (и мои пользователи!) Использует пробелы без классов, только со стилями для форматирования ad hoc. Так что, как я понимаю, он тоже удалит эти промежутки - не может этого сделать. Tinymce должен брать эти стили откуда-то.
    добавлено автор camcam, источник

    В моей конфигурации tinymce отсутствовала настройка «плагинов» по ​​сравнению с http://fiddle.tinymce.com Когда я добавил параметр «плагины», tinymce больше не вставляет промежутки со стилями в списки.

    Некоторая дополнительная информация, которая привела меня к решению:

    строка 14212 tiny_mce_src.js возвращала false при отладке на моем веб-сайте (при создании списка) - и возвращает true на скрипте tinymce. ( if (o = t.execCommands [cmd]) {..... )

    каким-то образом на моем веб-сайте tinymce выполнялась строка 15063 ( execNativeCommand ), тогда как на tinymce скрипке это не было (возможно, из-за отсутствия плагинов)

    собственный Chrome execCommand имеет проблемы с вставкой стилизованных пролетов, как описано здесь: http://help .dottoro.com/ljcvtcaw.php , и я также создал скрипку, чтобы подтвердить это: http://jsfiddle. net/fUsmx/ (закрыть и снова открыть инспектор, чтобы увидеть результат)

    3
    добавлено
    Появляется плагин «списки», который нормализует это поведение.
    добавлено автор Chris Anton, источник