我希望我的一个 div 忽略所有包含在其中的 html 标记,例如<br/>
's、<p>
's 和<b>
's。这怎么可能?谢谢!
问问题
11350 次
5 回答
7
如果您希望忽略的 HTML 标记当前是静态文本,请执行查找和替换(按此顺序):
Find Replace
-----------------
& &
< <
如果您希望忽略的 HTML 标记是使用 PHP 输出的,htmlspecialchars()
请在输出上使用并使用 UTF-8 对您的页面进行编码。
echo htmlspecialchars($stringThatContainsHTML, ENT_COMPAT | ENT_HTML5, 'UTF-8');
于 2013-08-14T04:23:44.337 回答
1
检查你的问题,看看 Stackoverflow 是如何做到的。
你会看到<br/>
,<p>
并且<b>
在一个code
元素中。
于 2013-08-14T04:23:22.953 回答
0
编码您的 html 实体:
< … <
> … >
& … &
" … "
(' … ' xml, not html. see comments)
您可能还想使用
<pre><code>
here comes your preformatted and escaped <html>-code
</code></pre>
让您的代码等宽并保留空格
于 2013-08-14T04:43:37.700 回答
0
你不能在 HTML 中做这样的事情。您可以使用 JavaScript 修改文档树,将元素节点替换为其内容或操作innerHTML
属性。当然,搜索引擎和朋友仍然会“看到”你让浏览器忽略的标签。
或者,您可以使用 CSS 来取消标签对渲染的影响,但这只会影响呈现(启用 CSS 时),而不影响浏览器可能对某些元素具有的任何功能。对于不同的元素,它需要有所不同。对于问题中提到的标签,假设您的div
元素具有class=ignoreTags
,为了明确起见,以下内容将使它们对视觉渲染产生的任何正常影响无效:
<style>
.ignoreTags br { display: none; }
.ignoreTags p { display: inline; margin: 0; }
.ignoreTags b { font-weight: normal; }
</style>
于 2013-08-14T13:46:59.510 回答
0
发现了一些可能有效的 hack
<input value='<a href="https://www.stackoverflow.com">stack</a><br> <b>My</b> text' />
- 根据需要设计输入大小
于 2019-08-14T13:22:57.360 回答