2013-05-08 99 views
-1

我有一個真正的快速問題。我想爲HTML頁面設置DOCTYPE,但我需要使用服務器端JavaScript來完成。我在這個網站上看到的每一個答案都說「我不明白你爲什麼要這樣做」,但從來沒有回答過這個問題(我可以找到......如果我錯了,請指出我的方向)。使用服務器端Javascript設置DOCTYPE

它需要完成的原因是因爲這在技術上是作爲HTML電子郵件發送的。我正在使用ExactTarget,他們不允許我在HTML>標籤的起始處輸入任何東西。如果我嘗試在它之後建立DOCTYPE,它將被簡單地刪除。

現在我可以在電子郵件呈現之前訪問服務器端JavaScript。我需要設置此DOCTYPE,因爲我試圖將< td>標籤設置爲「display:block」,並且這對於默認的DOCTYPE不起作用。所以基本上我需要在開頭的< html>標籤之後寫一些腳本,它將爲頁面(email)設置文檔類型。

我希望用下面的DOCTYPE但如果這是不明智的隨意提醒:

<!DOCTYPE html > 

而且,這裏是不符合當前的文檔類型工作的CSS:

@media screen and (max-width: 660px) { 
     td {display:block !important;} 
    } 

這裏是HTML:

<table bgcolor="#0033CC" width="100%" border="0" cellspacing="0" cellpadding="0"> 
     <tr> 
      <td>Top Content</td> 
     </tr> 
     <tr> 
      <td>Bottom Content</td> 
     </tr> 
</table> 

當我說服務器端JavaScript這裏是我的語法:

<script type="text/javascript" runat="server"> 
    *** MY SCRIPT *** 
</script> 
+0

你是什麼意思「serverside javascript」?像'node.js'? – Ian 2013-05-08 21:45:29

+0

爲什麼要在天堂的名字中設置'td'爲'display:block' ?! – 2013-05-08 21:48:19

+1

*「現在我可以在電子郵件呈現之前訪問服務器端JavaScript。」* Huh?渲染是客戶端活動,而不是服務器端活動。 – 2013-05-08 21:48:52

回答

1

如果ExactTarget不會讓您在啓動<html>標記之前輸出任何內容,那麼您不能執行此操作。在此之前,文檔類型已有

+0

是的,我希望像document.setDoctype()或類似的東西。 – DigitalMC 2013-05-08 21:54:00

+0

@DigitalMC:啊。很抱歉,我不相信有這樣的事情。 – 2013-05-08 21:56:04