我环顾四周,似乎没有任何关于RSS中允许使用HTML标签的标准 - 你可以放任何东西。但我测试过的读者只允许某些事情。
在我的初步测试中,它看起来像简单的样式标签,如< b>没事。内联样式如< span style =“color:red”> < img>似乎有效。但< iframe>会被忽略,< script>也是如此。块。 Onclick属性不起作用。 <风格>阻止在一些读者中工作但不在其他读者中工作
是否存在一般性共识,标准或兼容性网站,列出哪些读者支持哪些内容?我想知道我在Feed中可以使用的HTMl标记的子集是什么。
答案 0 :(得分:11)
<title>How to parse full html content in xml feeds</title>
<description><![CDATA[<html><body>Any code html is valid here like &npsb;
and what ever you want to transfer</body></html>]]></description>
<guid>http://example.com/your-news-id</guid>
答案 1 :(得分:1)
我认为这里没有标准 - 这完全取决于RSS阅读器本身愿意实现的内容。所以我的猜测就是,例如,谷歌阅读器会清除标签之类的内容以及危险的HTML和CSS属性,然后允许您敢于包含的任何其他类型的非黑名单标记。
所以,是的。没有规范,因此可能没有标准 - 只是我们在整个互联网中看到的相同的一般XSS预防技术。你唯一的选择是在不同的RSS阅读器中尝试各种你认为可能引起争议的标签(虽然我真的希望几乎可以使用CSS样式),看看会发生什么,或者只是让你的内容准备好回落如果不允许使用所需的HTML / CSS,则采用更基本的格式。
你特别想做什么?如果你能指明,你可能会得到更好的答案 - 或者这只是好奇心的问题?
答案 2 :(得分:1)
我认为'正确'的做法是要么包含一个xhtml命名空间(xmlns:html =“http://www.w3.org/1999/xhtml”),要么将HTML数据放在CDATA部分。< / p>
答案 3 :(得分:0)
我认为没有任何“官方”答案。这可能取决于您的目标兼容性水平。
我会将它保存到基本的文本格式标签(STRONG,EM等)以及IMG和A,这就是它。
答案 4 :(得分:0)
实际上,RSS源中不允许使用HTML属性。只允许上面发布的规范中列出的XML标记。此外,由于它是XML,因此只允许一些Unicode编码(例如UTF-8)。许多RSS提供商不尊重标准是另一回事。