当用户按ENTER键时,如何仅将<br />
放入div contenteditable?我必须在发送后以XML格式管理该div的内容,但有些浏览器会将新行转换为<p>
,有些(例如Google Chrome)转换为<div>
。
好的解决方案是强制在所有浏览器(仅<p>
或仅<div>
)中使新行相同。
PS:我正在使用jQuery和PHP。
答案 0 :(得分:1)
如何按下Enter键来捕获用户键盘事件?
答案 1 :(得分:0)
不确定,但请注意&lt; shift&gt;&lt; enter&gt;通常插入&lt; br /&gt;,我相信。
我想知道你是否可以强迫onKeypress转变?
答案 2 :(得分:0)
试试这个:<div contenteditable="true">test1<div></div></div>
当您在内容可编辑元素中点击返回时,可以强制使用单行间距,方法是使用内部DIV播种,如下所示:
答案 3 :(得分:-3)
div {white-space:pre};
“空白” 价值:正常|前| nowrap |预包装|前线|继承 初始:正常 适用于:所有元素 继承:是的 百分比:N / A. 媒体:视觉 计算值:指定
此属性声明如何处理元素内的空白区域。值具有以下含义:
正常 此值指示用户代理折叠空白序列,并根据需要断行以填充行框。 预 此值可防止用户代理折叠空白序列。行仅在源中的换行符处或在生成的内容中出现“\ A”时断开。 NOWRAP 此值会折叠白色空间,与“正常”相同,但会抑制文本中的换行符。 预包装 此值可防止用户代理折叠空白序列。在生成的内容中出现“\ A”时,在源中的换行处断开行,并根据需要填充行框。 前行 此值指示用户代理折叠空白序列。在生成的内容中出现“\ A”时,在源中的换行处断开行,并根据需要填充行框。
源中的换行符可以用回车符(U + 000D),换行符(U + 000A)或两者(U + 000D U + 000A)表示,或者用标识文档开头和结尾的其他机制表示段,例如SGML RECORD-START和RECORD-END令牌。 CSS“白色空间”处理模型假设所有换行都已标准化为换行符。
实施例(一个或多个):
以下示例显示了PRE和P元素以及HTML中“nowrap”属性的预期空白行为。
pre {white-space:pre} p {white-space:normal} td [nowrap] {white-space:nowrap}