【问题标题】:tinymce default applied (written) styletinymce 默认应用(书面)样式
【发布时间】:2014-10-18 14:27:01
【问题描述】:

我正在使用 tinymce 编辑 Web 应用程序中的某些字段。 我需要有一些规范的 html 结果(编辑后)。

例如:当我按 enter tinymce 创建一个新段落时(没关系,我知道可以更改此行为,但段落没问题)。

我需要的是应用段落的特定样式。 我看到可以指定 content_css,但这是在编辑后的 ​​html 中所写内容的视觉变形。

我的需要是当我按下输入具有特定样式(边距、对齐、..)的段落时,必须直接写在编辑后的 ​​html 文本中。

例如<P style="margin-top:2px; margin-bottom:10px"> ...</P>

是否可以定义应用于每个 html 标签的特定样式?

我需要这个,因为编辑后,html内容在应用程序的另一部分使用,我无法添加额外的样式配置。

【问题讨论】:

    标签: javascript html tinymce


    【解决方案1】:

    你试过了吗?

    ...
    'content_css' : './path/to/your/styles.css',
    ...
    

    styles.css

    p {
       margin-top:2px;
       margin-bottom:10px
    }
    

    ..我看到可以指定 content_css,但这是视觉变形..

    没错,但不要忘记当您调用tinyMCE.activeEditor.getContent() 时会提取此视觉变形。 不过,我不确定它是否会提取您应用于 <p> 的特定样式(未经测试)

    也检查here

    更新

    好的,我有另一个建议,使用this 进行 HTML 解析。

    $html = str_get_html("<div>add here your HTML from tinymce editor <p></p></div> test <p></p>");
    foreach($html->find("p") as $p) {
       $p->style = "margin:2px 0 10px 0";
    }
    $html_modified = $html;
    

    $html_modified 应包含应用了边距的&lt;p&gt;

    【讨论】:

    • 我尝试了 content_css,它在视觉上工作,但正如我在问题中所写,当我存储数据时,我需要直接在“隐藏”文本区域的代码中进行样式配置。我使用 ed.getContent() 复制数据,并检查编辑器 html 我可以看到“p{ margin: 0} 但查看写入的 html 只有

      xyz

      没有任何边距配置。跨度>
    【解决方案2】:

    是的,在 tinymce 中是可能的。只需转到编辑器工具栏的Tools -> Source Code。在那里编写带有样式的 HTML 代码。你可以自己试试。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-20
    • 1970-01-01
    相关资源
    最近更新 更多