javascript - 尽管 innerHTML 没有明确的新行、制表符或
问题描述
我的目标是为每个字符赋予不同的 css 特征,但它仍然使用 chrome 扩展保持其形式为单词。
原始元素是
Art info
使用 chrome 扩展,我用 span 包裹了每个字符。
<span wms-wrap>
<span>A</span>
<span>r</span>
<span>t</span>
<span>i</span>
<span>n</span>
<span>f</span>
<span>o</span>
</span>
我在 chrome by 中检查了它的 innerHTML,它显示 $0.innerHTML
<span>A</span><span>r</span><span>t</span> <span>i</span><span>n</span><span>f</span><span>o</span>
这正是我想要的。
但是,当我在 chrome 中检查其 innerText 时,它表明
$0.innerText
"A
R
T
I
C
L
E
I
N
F
O"
发现在每个跨度之间插入了新行。
我在网上搜索并应用了一些建议,例如 nobr 标签和 <style="white-space: nowrap;"> 但仍然添加了新行。
如何防止这些意外的新行?
解决方案
换行符在那里是因为它们在您的源代码中。空白为display折叠,这可能会受到 CSS 的影响,但是您正在查看 DOM,它是该显示逻辑的输入,因此需要保留原始空白。
您可以将源代码更改为不包含换行符,或者稍后使用 JavaScript string.replace 调用去除它们。由于您没有显示太多代码,因此很难比这更具体。
另一方面,如果重要的是它的外观,不要太担心 DOM。
推荐阅读
- html - 我想将 HTML 表单字段传递给脚本中的 powershell 变量
- google-app-engine - 如何让 golang gin 与谷歌应用引擎一起工作?
- linux - PhpStorm 远程 Xdebug
- python - MSK 调制波形绘图
- mongodb - 如何将多个 MongoDB 集合的内容发送到使用 express 进行渲染的路由?
- vue.js - 如何为 Vue 组件数据指定类型、默认值和验证器
- python - 将 matplotlib imshow 裁剪到值的范围
- .net - TeamCity 中的 Nuget 命令
- ios - 按对象唯一 ID 过滤
- python - 如何使用 Python 获取城市的人口和地理位置?