在React中导致换行

时间:2019-12-06 03:04:17

标签: reactjs

当我致电 时,我对dangerouslySetInnerHTML有一个疑问, 会导致换行。 如果我将其替换为空格,它将起作用 请检查我的密码和邮箱 https://codesandbox.io/s/dangerouslysetinnerhtml-4u16s

1 个答案:

答案 0 :(得分:2)

Non-breaking space )和普通空格()具有不同的字符代码。

console.log(example.textContent[0].charCodeAt(0));
console.log(example.textContent[1].charCodeAt(0));
<div id="example">&nbsp; </div>

使用&nbsp;连接单词时,浏览器不会因为其不易损坏的属性而中断连接单词。因此,浏览器会将其解析为一个长字。

就像普通的长单词一样,除非您将word-break的样式设置不同,否则浏览器不会破坏单词。

我相信下面的代码可以进一步证明差异:

div {
  width: 30px;
  border: 1px solid black;
}
<div>I&nbsp;have&nbsp;a&nbsp;pen&nbsp;and&nbsp;I&nbsp;have&nbsp;an&nbsp;apple</div>
<div>IhaveapenandIhaveanapple</div>
<div>I have a pen and I have an apple</div>