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;
相关文章
相关标签/搜索