问题:
我的网站允许用户将其他文件/文档(如MS Word和网站(例如CNN.com))中的内容复制/粘贴到我们提供的Rich TextEditor中。这个Rick TextEditor支持(我们也必须支持)使用嵌入式样式粘贴内容,这会带来随机样式,标记来自内容源的内联样式。
例如:如果您从任何MS Word文档粘贴,它会为H1, H2, P, UL/OL/LI, STRONG, I, EM, TABLE
等带来自己的样式。从其他网页复制粘贴时也会发生相同的情况。
如何格式化? 我正在寻找处理这些用户生成的内容的格式的最佳方法。首先,我需要保持复制的标签不变。可以说,H1来自MS Word的用户 - 我必须使用给定的企业品牌来保持这种风格。
另一个问题是,当您从外部原点复制/粘贴时 - 某些标记未正确关闭 - 这会导致我的布局中断。我们该如何处理?
对于样式,应用
.article * {
allKnownCSSProperties: myValues!important;
}
任何方法都可行。 JavaScript,C#是首选。
答案 0 :(得分:1)
要删除不需要的样式,简单的正则表达式就足够了。在Javascript中:
/( style=['"][^'"]*['"])/g
答案 1 :(得分:0)
我会尝试解决缺少封闭标签的问题,因为:
解析整个邮件并收集不以/>
结尾的标记,如果您发现相同的标记以</
开头,则将其删除。排除可能没有关闭标记的标记,为仍在收集中的所有标记生成关闭标记,并将它们放在您的Rich TextEditor布局的末尾。它可能在某些情况下不起作用或看起来很笨拙,但首先考虑的是它可能有助于解决问题