我正在尝试通过添加属性contenteditable
来编辑文章元素,这可以正常工作。我可以在没有额外JS的情况下输入新文本并设置样式。
我的问题是原生富文本编辑,虽然非常适合<b>
或<u>
等基本内容,但却打破了我的一些默认格式。当我按输入时,文本向下移动[将新的文本行包装在新的<p>
标记中],但是当我点击 backspace 时就好像要添加它回到原始段落,原生编辑器将文本包装在<span>
标签中。
如果是这种情况,我可以处理不必要的span标记,但不幸的是,本机编辑器还为span标记添加了内联样式,从外部contenteditable
拉出样式元素,所以标签现在看起来像这样:
<span style="font-size: 1.5em; line-height: 1.3em;">
当使用em
单位时,这本身就存在一个问题,因为现在<span>
内的文字大小增加了1.5倍,更不用说混乱的线条高度了。因此,我宁愿让文章元素满足,但禁用默认的富文本编辑功能并在JS中滚动自己。
本质上:如何允许元素 contenteditable ,但禁用原生富文本编辑功能?
我还应该补充一点,我在Chrome中工作,如果这有所不同的话。所有浏览器都会发生这种情况吗?