【问题标题】:How can I preserve double spacing when users paste text into Quill.js editor?当用户将文本粘贴到 Quill.js 编辑器中时,如何保留双倍行距?
【发布时间】:2015-05-21 06:07:40
【问题描述】:

我有一个使用 Quill.js 的 ASP.NET MVC 应用程序。我希望用户能够从 MS Word 等复制双倍行距文本,并将其粘贴到我的 Quill 编辑器中,同时保留他们的双倍行距。

在视图中:

    <div class="editor">
        @Html.Raw(Model.EvaluationText)
    </div>

js:

    var basicEditor = new Quill('.editor', {
        modules: {
            toolbar: {
                container: '.editor-toolbar'
            }
        },
        theme: 'snow'
    });

当我查看 devtools 时,我看到有一个类为 'ql-paste-manager' 的 div,我认为我需要覆盖它,但我不确定如何或是否是这样去吧。

【问题讨论】:

  • 有什么意义?无论如何,当您将其呈现为 HTML 时,将忽略双倍间距。保持双倍行距的唯一方法是将整个 shebang 包裹在 &lt;pre&gt;&lt;/pre&gt; 标签中,但不适用于网络上的长格式文本。
  • 重点是以双倍行距显示复制到编辑器中的文本。我明白你所说的前置元素......但你是说这种努力是完全不可能的吗?

标签: asp.net-mvc quill


【解决方案1】:

如果您知道文本是双倍行距的,则可以使用 CSS 进行控制。只需将行高设置为 200%(或您想要的任何值)。例如。

.ql-editor div, .ql-editor li {
  line-height: 200%;
}

但是,Quill 的粘贴管理器目前不支持检测粘贴的文本是单行距还是双行距。

【讨论】:

  • 我没有测试过,但我认为这种方法是最简单的(虽然我不是为此使用 css 的忠实粉丝)。
猜你喜欢
  • 2020-02-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-06-23
  • 2011-05-21
相关资源
最近更新 更多