是否可以使用<span>
或任何其他标记来突出显示HTML文档中的文本?
例如,在HTML代码<p>The quick fox</p>
中,我想强调quick
但不在其周围添加DOM元素。将DOM元素添加到父元素就可以了。
谢谢!
答案 0 :(得分:8)
不,这是不可能的。
您不能告诉浏览器以不同的方式呈现一段文本,而不是固有地更改DOM,无论您是静态还是动态地执行(例如,使用Javascript作为后处理步骤)。
答案 1 :(得分:2)
如果您使用具有透明重复背景图像或透明背景颜色(使用rgba或hsla)的绝对定位元素并将其放置在所选区域上,则可以使用。
另一种方法是使用一个绝对定位的画布元素,不带背景,占据整个浏览器视口,并在选区上绘制透明矩形。
答案 2 :(得分:0)
这是不可能的。
如果您只想在原始源代码中不使用任何标记,则可以稍后使用Javascript魔术添加标记。你可以做点什么
<p highlight="quick">The quick fox</p>
并编写一个JQuery / Prototype / plain JS函数来动态突出显示它,但是为什么以及为什么?如果你详细说明一下,有人可能想出一个主意。
答案 3 :(得分:0)
实现这一目标的唯一方法是使用<canvas>
元素,并手动渲染绝对所有内容。