转义iframe srcdoc值中的引号

时间:2014-03-13 14:10:15

标签: html iframe

根据spec引号必须转义,即代替:

<iframe seamless sandbox srcdoc="<p>Yeah, you can see it <a href="/gallery?mode=cover&amp;page=1">in my gallery</a>."></iframe>


我们应该使用:

<iframe seamless sandbox srcdoc="<p>Yeah, you can see it <a href=&quot;/gallery?mode=cover&amp;amp;page=1&quot;>in my gallery</a>."></iframe>


但是在上面的例子中简单地使用单引号是不行的:

<iframe seamless sandbox srcdoc="<p>Yeah, you can see it <a href='/gallery?mode=cover&amp;page=1'>in my gallery</a>."></iframe>

3 个答案:

答案 0 :(得分:3)

您链接的规范仅指出引号已转义,因为

  

否则srcdoc属性会过早结束。

使用单引号表示没有问题,如上一个示例所示。

<小时/> 如果值中有单引号(例如,“你是”这个词),那么你必须要逃避其中一个。

答案 1 :(得分:0)

是的,你是对的。

我们可以使用双引号和单引号的组合来逃避逃避它们。

但规范说:

  

转义引号//只是引号未指定是单引号还是双引号

答案 2 :(得分:0)

尝试从 HTML 转换为 XHTML - online tool cruto

     html:
<iframe seamless sandbox srcdoc="<p>Yeah, you can see it <a href="/gallery?mode=cover&amp;page=1">in my gallery</a>."></iframe>


 xhtml:
<iframe seamless="" sandbox="" srcdoc="&lt;p&gt;Yeah, you can see it &lt;a href=" gallery?mode="cover&amp;page=1&quot;">in my gallery&lt;/a&gt;."&gt;</iframe>