为什么textContent不会触发流



我在看MDN上的textContent和innerText之间的区别。它向我展示了一些让我很困惑的东西。

1。innerText知道样式,不会返回隐藏元素的文本,而textContent会。(没问题,完全理解)

2。由于innerText知道CSS样式,它将触发流,而textContent不会。(为什么?)

有人建议我回答这个问题,而不是留下评论。不过在那之后我做了更多的研究。现在让我们再来看看它们的区别。

innerText知道样式,不会返回隐藏的文本元素

引用自MDN。

这意味着,innerText只从可见元素(不是display: none,也不是visibility: hidden)中获取文本。此外,应用在text-transform: uppercase等元素上的css样式也将被考虑在内。因此,innerText将返回文本的大写版本,而textContent将返回未更改的版本。您可以在jsfiddle上尝试这个演示。

因为innerText需要知道元素最近的样式是什么,它应该首先触发reflow(刷新排队的reflow列表)并重新计算元素的样式。然后得到预期的结果。

而textContent不需要这样做,因为它不知道样式。

如果您对innerText和textContent之间的差异的更多细节感兴趣,您可以阅读本文

相关内容

  • 没有找到相关文章

最新更新