如何透過 JavaScript 將 CSS 規則新增到樣式表?
insertRule() 允許我們在樣式表中指定位置插入一條規則,而 deleteRule() 則能刪除網頁上的一個特定樣式。以下程式碼展示了可使用 JavaScript 新增到樣式表中的 CSS 規則。
插入一條規則
要插入一條規則,請使用 insertRule() 方法。這裡也會設定邊距、內聯距和投影。首先使用 getElementById() 設定自定義 id −
let newSheet = document.getElementById('custom').sheet
let cs = 'p {';
cs += 'margin: 4%;';
cs += 'padding: 2%;';
cs += 'font-size: 22px;';
cs += 'box-shadow: -10px 4px 0 chartreuse;'
cs += '}';
newSheet.insertRule(cs, 0);
該 custom 是使用 <style> 設定的 id −
<style type="text/css" id="custom">
示例
下面來看一個在網頁上插入規則的示例 −
<!DOCTYPE html>
<html>
<head>
<style type="text/css" id="custom">
body {
background-color: silver;
}
</style>
</head>
<body>
<h1>Custom CSS!</h1>
<p>Woohoo!</p>
<script>
let newSheet = document.getElementById('custom').sheet
let cs = 'p {';
cs += 'margin: 4%;';
cs += 'padding: 2%;';
cs += 'font-size: 22px;';
cs += 'box-shadow: -10px 4px 0 chartreuse;'
cs += '}';
newSheet.insertRule(cs, 0);
</script>
</body>
</html>
刪除一條規則
要刪除一條規則,請使用 deleteRule() 方法。首先使用 insertRule() 方法設定規則。<h2> 邊框已針對此規則設定 −
let mySheet = document.getElementById('demo').sheet
let cs = 'h2 { border: 2px solid green; }'
mySheet.deleteRule(2);
mySheet.insertRule(cs, 0);
該 demo 是使用 <style> 設定的 id −
<style type="text/css" id="demo">
示例
下面來看一個從網頁中刪除規則的示例 −
<!DOCTYPE html>
<html>
<head>
<style type="text/css" id="demo">
div {
margin: 3%;
text-align: center;
background-color: powderblue;
}
p {
box-shadow: 0 0 12px rgba(0,0,0,0.6);
}
h2 {
color: red;
}
</style>
</head>
<body>
<div>
<h2>Custom CSS!</h2>
<p>Woohoo!</p>
</div>
<script>
let mySheet = document.getElementById('demo').sheet
let cs = 'h2 { border: 2px solid green; }'
mySheet.deleteRule(2);
mySheet.insertRule(cs, 0);
</script>
</body>
</html>
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP