2010-11-24 50 views
2

我被要求做一個非常簡單的任務,寫下一些產品的URL,以便我們可以將它們從我們的電子雜誌鏈接到網站,簡單的權利?好的,那很簡單。但是當我來看一個特定產品的鏈接時,我發現HTML頁面被搞亂了。好吧,我想我會進去修復它,不能太困難,它在一個所見即所得編輯器中...我覺得這些奇怪的代碼是什麼?

這個網站依賴於PHP/smarty。

這是它得到各種混亂的地方。

Here, in this fiddle是所見即所得的編輯器生成的內容的代碼(我沒有做這個,其他一些猴子做的)。

正如你所看到的,有代碼的一大塊,且開頭:

<!--[if gte vml 1]><v:shapetype 

如果我刪除此,整個事情決定不顯示在static HTML page,但在其他任何產品頁面驗證碼沒有顯示。另外,無論我做什麼(甚至將記事本中的信息以純文本的形式粘貼),佈局都非常混亂,不會解決任何問題。

  1. 這是什麼瘋狂的代碼?
  2. 有沒有人遇到過這樣的情況,所見即所得的編輯器?
  3. 如果是這樣,我該怎麼做才能使此頁面連貫地顯示我的信息?

非常感謝謝謝。


編輯

所以,我已經去掉了所有不必要的HTML,並使它超級簡單as shown here

然而,當我將它添加到所見即所得的東西的HTML編輯器並保存時,沒有任何內容顯示在相應的頁面中。

其他人有這種麻煩?

謝謝。

回答

4

專有的MS VML代碼。有人可能從Word或其他Office程序複製並粘貼。

我習慣於在服務器端使用類似HTMLPurifier的東西,同時鎖定編輯器只允許一個嚴格的標籤子集來防止這種類型的事情。如果您使用FCK/CK,還可以選擇使所有粘貼操作在放入編輯器之前使用純文本窗口。

5

這些是CSS conditional comments

在這種情況下(if gte vml 1)條件似乎是安裝VML(虛擬建模語言)版本1或更高版本。

這可能是粘貼的,所以您需要編輯原始HTML並將其清除。

+0

我認爲條件註釋只適用於IE? – Kyle 2010-11-24 15:08:44

+0

@Downvoter - 謹慎解釋? – Oded 2010-11-24 15:12:38

3

當用戶從MS Word或其他富文本編輯器粘貼文本時,這種情況經常發生。

您需要在發佈它之前清除此代碼或禁止直接粘貼。 TinyMCE所見即所得編輯器有一些很好的選擇。