我被要求做一个非常简单的任务,写下一些产品的URL,这样我们就可以将它们从我们的电子杂志链接到网站了,简单吧?嗯,是的,这很容易。但是当我来看一个特定产品的链接时,我发现HTML页面搞砸了。好吧,所以我想我会进去修理它,不能太难,它在WYSIWYG编辑器中......
这个网站依赖于PHP / smarty。
这是各种搞砸的地方。
Here, in this fiddle是由WYSIWYG编辑器生成的内容代码(我没有做到这一点,其他一些猴子做过)。
正如您所看到的,有一大堆代码以:
开头<!--[if gte vml 1]><v:shapetype
如果删除此内容,则整个内容决定不显示在static HTML page上,但在任何其他产品页面中,此代码均未显示。此外,布局非常混乱,无论我做什么(即使以记事本中的纯文本粘贴信息)也不会解决任何问题。
非常感谢你。
编辑
所以我删除了所有不需要的HTML并使其变得非常简单as shown here。
然而,当我将其添加到WYSIWYG事物的HTML编辑器中并保存时,相应页面中不会显示任何内容。
其他人有这种麻烦吗?
感谢。
答案 0 :(得分:5)
在这种情况下(if gte vml 1
)条件似乎是安装了VML(虚拟建模语言)版本1或更高版本。
这可能是粘贴的,因此您需要编辑原始HTML并将其清除。
答案 1 :(得分:4)
专有的MS VML代码。有人可能会从Word或其他Office程序中复制和粘贴。
我习惯在服务器端使用像HTMLPurifier这样的东西,同时锁定编辑器只允许严格的标签子集来阻止这种类型的事情。如果你使用FCK / CK,还有一个选项可以让所有粘贴操作在将它放入编辑器之前使用纯文本窗口。
答案 2 :(得分:3)
当用户从MS Word或其他富文本编辑器粘贴文本时,这种情况经常发生。
您需要在发布之前清除此代码,或禁止直接粘贴。 TinyMCE WYSIWYG编辑器有一些很好的选择。