js建立和修改外部樣式,批量調整元素的表現

示例代碼以下(兼容主流瀏覽器和ie6以上的ie瀏覽器): css

<!DOCTYPE html>
<html lang="en">
	<head>
		<meta charset="utf-8">
		<title></title>
		<style></style>
	</head>
	<body>
		<div id="test"></div>
	</body>
	<script src="../lib/jquery-1.8.3.min.js"></script>
	<script>
		var style = document.createElement("style");
		
		style.type = 'text/css';
		$("body").append(style);
		var sheet = style.sheet ? style.sheet : style.styleSheet;
		
		if(sheet.insertRule){
			sheet.insertRule("#test{width:100px;height:100px;background:red;}",0);
		} else {
			sheet.addRule("#test", "width:100px;height:100px;background:red;", 0);
		}
	</script>
</html>

如下兩句代碼不能互換順序,不然在大多數瀏覽器上沒法獲取sheet(瀏覽器吧style當作一個普通的dom處理,而不是一個樣式表) html

$("body").append(style);
var sheet = style.sheet ? style.sheet : style.styleSheet;
相關文章
相關標籤/搜索