A 三位一體的頁面
網頁的結構層(Structure )由HTML 或XHTML 建立;
網頁的表現層(Presentation )由CSS 來建立;
網頁的行為層(Behavior )由Javascript 和DOM 所完成;
其實,網頁的表現層和行為層總是存在的,即使使用者沒有去定義。因為網頁瀏覽器會把自身預設的樣式和事件載入到網頁的結構層上。
B 使用className 屬性
Javascript 還可以通過className 屬性靈活的更改一個標籤元素的CSS 類別選取器來實現樣式的變化。
程式碼範例: 複製代碼 代碼如下:<html>
<head>
<title>追加CSS類別</title>
<style type="text/css">
.myUL1{
color:#0000FF;
font-family:Arial;
font-weight:bold;
}
.myUL2{
text-decoration:underline;
}
</style>
<script language="javascript">
function check(){
var oMy = document.getElementsByTagName("ul")[0];
oMy.className += " myUL2"; //追加CSS類,注意" myUL2"前面的空格.
}
</script>
</head>
<body>
<ul onclick="check()" class="myUL1">
<li>HTML</li>
<li>JavaScript</li>
<li>CSS</li>
</ul>
</body>
</html>
運行時,單擊列表後,實際上<ul> 的class 屬性變為:
<ul onclick="check()" class="myUL1 myUL2">
注意:
i > 如果是直接修改className 屬性值,則是對CSS 進行替換;
ii > 但以上代碼不是將原有的CSS 樣式覆蓋,而是對現有CSS 樣式進行追加。
追加的前提是:保證追加的CSS 與原先的CSS 不重複;
經驗:
瀏覽器之間顯示的差異,通常都是因為各個瀏覽器本身對CSS 屬性的預設值不同所導致的。
通常的解決辦法是:程式員自己指定該值,而不讓瀏覽器使用其預設值即可。