JavaScript动态修改元素样式:内联style与外部CSS的两种实现方式

作者:像素猫时间:2026-10-31 01:32:55浏览:389

本文通过具体代码示例,详解如何使用JavaScript动态改变页面元素的样式。内容涵盖两种核心方法:一是通过DOM直接操作元素的style属性实现内联样式的即时修改;二是通过访问document.styleSheets对象,动态调整外部CSS文件中定义的类样式。文章提供了完整的HTML与JS代码结构,帮助开发者理解不同场景下的样式控制策略。

JavaScript动态修改元素样式:内联style与外部CSS的两种实现方式

JavaScript能够响应用户在页面上的交互选择,从而动态调整页面元素的视觉表现。这种样式的控制既可以通过直接操作元素的style属性来实现,也可以借助外部定义的CSS样式表来完成。首先,我们探讨如何通过JavaScript直接修改元素的内联style属性,具体实现代码如下:


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
 <head>
  <title>Change.html</title>
  <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  
  <!--<link rel="stylesheet" type="text/css" href="./styles.css">-->
 <script language="javascript">
   function test4(event) {
	  if(event.value == "黑色") {
	   //获取div1
	   var div1 = document.getElementById('div1');
	   div1.style.backgroundColor="black";
	  }
	  if(event.value == "红色") {
	   //获取div1
	   var div1 = document.getElementById('div1');
	   div1.style.backgroundColor="red";
	  }
	 }
 </script>
</head>
<body>
 <div id="div1" style="width:400px; height:300px; background-color:red;">div1</div>
 <input type="button" value="黑色" onclick="test4(this)"/>
 <input type="button" value="红色" onclick="test4(this)"/>

 </body>
</html>

在代码中,test4(this)函数接收当前触发的<input>元素作为参数,将其视为一个对象进行处理。

接下来,介绍如何通过JavaScript修改外部CSS样式表中定义的类样式,相关代码如下:


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
 <head>
  <title>Change1.html</title>
  <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  
  <link rel="stylesheet" type="text/css" href="css/Change.css">
 <script language="javascript">
   function test4(event) {
	 //获取样式表中所有class选择器都获得
	 var ocssRules = document.styleSheets[0].rules;
	 //从ocssRules中取出你希望的class
	 var style1 = ocssRules[0];
	 if(event.value == "黑色") {
	   //window.alert(style1.style.backgroundColor);
	   style1.style.backgroundColor="black";
	 }else if(event.value == "红色") {
	   style1.style.backgroundColor="red";
	 }
	 
	 }
  </script>
</head>
<body>
 <div id="div1" class="style1">div1</div>
 <input type="button" value="黑色" onclick="test4(this)"/>
 <input type="button" value="红色" onclick="test4(this)"/>

 </body>
</html>

以上即为JavaScript动态修改内联style与外部CSS样式的完整实例解析,希望能为相关开发工作提供参考。

作者最新文章