在HTML我可以這樣做:在XHTML中無腳本替代?
<noscript><link href="css/stylenojs.css" rel="stylesheet" type="text/css" /></noscript>
有一些兼容的方式在XHTML過渡或嚴格的文檔這樣做呢?
在HTML我可以這樣做:在XHTML中無腳本替代?
<noscript><link href="css/stylenojs.css" rel="stylesheet" type="text/css" /></noscript>
有一些兼容的方式在XHTML過渡或嚴格的文檔這樣做呢?
你給的例子在HTML和XHTML中都是無效的。沒有當前的建議提供了一種方法來包含樣式表,除非腳本被啓用。
一般而言,您應該避免<noscript>
。開始與一些作品,然後build on it.
在這種情況下,你可以寫你的樣式表對非JS的客戶,則:
<body>
<script type="text/javascript">document.body.className += ' js';</script>
...幷包括針對JS與被啓用額外的規則集:
body.js foo {
}
或者,你可以這樣做:
<link href="css/stylenojs.css" rel="stylesheet" type="text/css" id="nojscss" />
和
var nojscss = document.getElementById('nojscss');
nojscss.parentNode.removeChild(nojscss);
其實是什麼理查德寫的是有效的HTML5,因爲沒有腳本和自我關閉標籤都可以,但是,即使XHTML5也不允許
當前所選答案具有誤導性。
<noscript>
是HTML valid以及問題中提供的示例。
無腳本元件僅在HTML語法有效,它在XHTML語法沒有 效果。這是因爲它的工作方式是 在啓用腳本時基本上「關閉」分析器,因此元素的內容被視爲純文本,而不是實際的 元素。 XML沒有定義一個執行此操作的機制。
現在,關於XHTML的小dirty secret的是,瀏覽器不是在XML處理XHTML除非記錄在application/xhtml+xml
做爲該MIME類型。
如果您的頁面被提供爲正確的XHTML
,那麼解決方案可能會將頁面的doctype
更改爲HTML5和MIME類型爲text/html
。
相關問題:https://stackoverflow.com/questions/17829671/is-it-wise-to-use-the-noscript-tag-for-tracking-visitors-who-have-javascript-dis – Hawken 2014-04-28 22:19:19