[英]HTML “link” (stylesheet) disabled attribute
我正在使用JavaScript來啟用/禁用樣式表,使用以下內容:
document.styleSheets[0].disabled = true|false;
這個JS工作正常,但我希望默認情況下樣式表是DISabled。 雖然我可以使用上面的JS在頁面加載時立即禁用樣式表,但這顯然不適用於關閉JavaScript的用戶。
我試過這樣做:
<link rel="stylesheet" href="style.css" disabled />
雖然這會禁用樣式表,但JavaScript(或者至少我正在使用的方法)無法再次使用它。 我還在“禁用”屬性上嘗試了所有這些變體: disabled="disabled"
, disabled="true"
和disabled=true
,但這些產生同樣的問題 - 我無法再使用JavaScript啟用它們。
簡而言之,我需要一種使用JavaScript啟用/禁用外部樣式表的方法,但默認情況下禁用該樣式表但不依賴於JavaScript。
任何幫助將不勝感激。 謝謝。
注意這種效果可以通過使用兩個樣式表來實現,第二個覆蓋第一個樣式表,因此不需要“禁用”屬性。 但是,如果可能的話,顯然最好只使用一個樣式表,因此我的問題就在上面。
您可以使用JavaScript的removeAttribute方法。
<html>
<head>
<link id="first_style" rel="stylesheet" href="#" disabled />
<script type="text/javascript">
window.onload = function()
{
document.getElementById('first_style').removeAttribute('disabled');
}
</script>
</head>
<body>
<p>something</p>
</body>
</html>
為什么不解決問題:如果啟用了JavaScript,只加載CSS?
從這個例子中 ,你可以使用類似的東西:
var fileref=document.createElement("link")
fileref.setAttribute("rel", "stylesheet")
fileref.setAttribute("type", "text/css")
fileref.setAttribute("href", filename)
我想在這種情況下你可能不得不依賴JavaScript。
如果您認為如果需要更多地提供樣式表而不是默認禁用,那么您應該指出它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.