Estamos tratando de agregar un formato de estilo personalizado a TinyMCE que actúa como un envoltorio, pero no queremos que aparezca dentro de otro DIV, celda de tabla o lista.
Pensamos que podríamos lograr esto con la opción valid_children pero se está ignorando.
Aquí hay una configuración de prueba;
tinymce.init({ selector: 'textarea.tinymce', width: '100%', height: 600, plugins: [ 'advlist autolink link lists anchor', 'visualblocks visualchars code', 'table paste' ], style_formats: [ {'title': 'Test', 'block': 'div', 'wrapper': true, 'block_expand': true, 'deep': true, 'classes': 'test', 'remove': 'all'} ], valid_children: '-div[div], -li[div], -ul[div], -ol[div], -td[div], -th[div]', });Y aquí hay un violín: https://jsfiddle.net/r4ymo893/
Si realiza una selección que contiene parte de una lista o tabla, el contenedor se aplica dentro de cada lista/celda, lo que rompe las reglas que establecimos en valid_children
¡Cualquier ayuda sería muy apreciada!
Creo que es porque tienes valid_children dos veces. Necesito actualizar a esto:
tinymce.init({ selector: 'textarea.tinymce', width: '100%', height: 600, plugins: [ 'advlist autolink link lists anchor', 'visualblocks visualchars code', 'table paste' ], style_formats: [ {'title': 'Test', 'block': 'div', 'wrapper': true, 'block_expand': true, 'deep': true, 'classes': 'test', 'remove': 'all'} ], valid_children: '+body[style], -div[div], -li[div], -ul[div], -ol[div], -td[div], -th[div]', });