Buefy / Bulma:内容可编辑的div使Safari崩溃

创建contentEditable div时,包括Buefy / Bulma样式表,在Safari中打开网页,将光标置于可编辑div中,然后尝试输入文本,Safari会冻结。

触发错误的HTML:

<div contentEditable="true"></div>

我正在使用Safari v13.0.3和Buefy v0.8.8。

kweaky 回答:Buefy / Bulma:内容可编辑的div使Safari崩溃

结果证明这是WebKit中的错误:https://bugs.webkit.org/show_bug.cgi?id=202262

使用可编辑内容的div,当文本渲染设置为optimizeLegibility且字体家族包含-apple-system时,将触发该错误。 Buefy / Bulma使用了这种文本渲染和字体系列组合。在样式表中:

html {
  background-color: white;
  font-size: 16px;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  min-width: 300px;
  overflow-x: hidden;
  overflow-y: scroll;
  text-rendering: optimizeLegibility;
  text-size-adjust: 100%;
}

...

body,button,input,select,textarea {
  font-family: BlinkMacSystemFont,-apple-system,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue","Helvetica","Arial",sans-serif;
}

解决方法是覆盖可编辑div的字体系列。我包括Bulma样式表中的字体,除外 -apple-system,并且Safari不会崩溃:

<div contentEditable="true"
  style="font-family: BlinkMacSystemFont,'Segoe UI','Roboto','Oxygen','Ubuntu','Cantarell','Fira Sans','Droid Sans','Helvetica Neue','Helvetica','Arial',sans-serif;"></div>
本文链接:https://www.f2er.com/2929174.html

大家都在问