我在博客中使用<pre>
标记发布代码。我知道我必须将<
更改为<
,将>
更改为>
。我需要转义任何其他字符才能找到正确的HTML吗?
答案 0 :(得分:9)
如果您使用<pre>
标记在博客上显示HTML标记会发生什么:
<pre>Use a <span style="background: yellow;">span tag with style attribute</span> to hightlight words</pre>
这会传递HTML验证,但是它会产生预期的结果吗? 否即可。正确的方法是:
<pre>Use a <span style="background: yellow;">span tag with style attribute</span> to hightlight words</pre>
另一个例子:如果你使用pre标签显示其他语言代码,仍然需要HTML编码:
<pre>if (i && j) return;</pre>
这可能会产生预期的结果但会通过HTML验证吗? 否即可。正确的方法是:
<pre>if (i && j) return;</pre>
简而言之,对预标记的内容进行HTML编码,就像使用其他标记一样。
答案 1 :(得分:5)
set _cmd=%1
set _java=javaw
if "%_cmd%"=="" set _cmd=default
if "%_cmd%"=="-h" set _java=java
%_java% -classpath . RunWeka -i .\RunWeka.ini -w .\weka.jar -c %_cmd% "%2"
代码这不是众所周知的,但它确实存在,甚至铬仍然支持它,
然而,使用对 <xmp>
标记不推荐依赖于它 - 它只适合您,但它是一种非常简单的方式来处理您的个人问题。 DOCS。甚至w3.org WIKI在例子中说“不,真的。不要使用它。”
您可以在<xmp>
</xmp>
结束标记)
<xmp></xmp>
可以将正确的版本视为存储为 STRING 的HTML,并在某些转义功能的帮助下显示。
请记住一件事 - C语言中的字符串通常用单引号或双引号括起来 - 如果你将字符串换成double =&gt;如果你将你的字符串换成单个=&gt;你应该逃脱双打(可能与<xmp>
<html> <br> just any other html tags...
</xmp>
)。逃脱单打(可能与\
)......
服务器端脚本语言通常具有一些内置函数来转义HTML。
\
在客户端脚本中可以实现与服务器端类似的方法,
根据我所知,JavaScript没有内置函数(这是非常合乎逻辑的),但是如果你使用一些框架/库,比如jQuery,那么有些函数可以这样使用。
只要记住与服务器端相同的东西 - 在类C语言中,转义你已经将字符串包裹起来的引号......
<?php
$html = "<html> <br> or just any other HTML"; //store html
echo htmlspecialchars($html); //display escaped html
?>
答案 2 :(得分:-1)
要在标记中发布代码,建议您使用<code>标记。它的工作方式与pre相同,但在语义上也是正确的。
否则,&lt; code&gt;和&lt; pre&gt;只需要编码的尖括号。
答案 3 :(得分:-4)
使用它,不要担心它们中的任何一个。
<pre>
${fn:escapeXml('
<!-- all your code -->
')};
</pre>
您需要启用jQuery才能正常工作。