用JS控制CSS基本样式

用JS控制CSS基本样式的方法 
CSS code 
.class1 

width:10px; 
background-color: red; 

HTML code 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> 
<HTML> 
<HEAD> 
<link rel="stylesheet" type="text/css" href="abc.css" /> 
<TITLE> New Document </TITLE> 
<script> 
window.onload=fnInit; 
function fnInit(){ 
// 访问 styleSheet 中的一条规则, 将其 backgroundColor 改为蓝色。 
var oStyleSheet=document.styleSheets[0]; 
var oRule=oStyleSheet.rules[0]; 
oRule.style.backgroundColor="#0000FF"; 

</script> 
</HEAD> 
<BODY> 
<div class="class1">aaa</div> 
</BODY> 
</HTML> 
(2) 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> 
<HTML> 
<HEAD> 
<TITLE> New Document </TITLE> 
<style type="text/css"> 
<!-- 
#apDiv1 { 
position:absolute; 
width:399px; 
height:195px; 
z-index:1; 
border:1px solid #000; 
background-color:#CCCCCC; 

--> 
</style> 
<script> 
window.onload = function(){ 
alert(document.getElementById('apDiv1').currentStyle.width) 

</script> 
</HEAD> 
<BODY> 
<div id="apDiv1">aaa</div> 

</BODY> 
</HTML> 

还可以用   document.styleSheets(i).href   可以知道当前页面中引用的每个css的文件! 
另:CSS属性与JavaScript编码对照表 
(一定要注意, 上次本人_何向阳,在使用js修改css的中margin-left属性时,总报"left"未定义,后来,找了好多资料,才发现在js中,margin-left的写法为:marginLeft,恍然大悟,希望遇到相同问题的朋友,谨慎对待。) 
CSS与JS紧密配合,为我们的页面增添了很多别致的效果。为了达到某种特殊的效果我们需要用Javascript动态的去更改某一个标签的CSS属性。 
    比如:鼠标经过一个图片时我们让图片加一个边框,代码可能是这样:JavaScript中style后面的属性应该是什么? 
<script type="text/javascript">   
function imageOver(e) {   
e.style.border="1px solid red";   
}   
function imageOut(e) {   
e.style.borderWidth=0;   
}   
</script> 

<img src="css.png" onmouseover="imageOver(this)" onmouseout="imageOut(this)" /> 
    JavaScript CSS Style属性对照表 
    盒子标签和属性对照 
CSS语法 (不区分大小写)   JavaScript语法 (区分大小写) 
border   border 
border-bottom   borderBottom 
border-bottom-color   borderBottomColor 
border-bottom-style   borderBottomStyle 
border-bottom-width   borderBottomWidth 
border-color   borderColor 
border-left   borderLeft 
border-left-color   borderLeftColor 
border-left-style   borderLeftStyle 
border-left-width   borderLeftWidth 
border-right   borderRight 
border-right-color   borderRightColor 
border-right-style   borderRightStyle 
border-right-width   borderRightWidth 
border-style   borderStyle 
border-top   borderTop 
border-top-color   borderTopColor 
border-top-style   borderTopStyle 
border-top-width   borderTopWidth 
border-width   borderWidth 
clear   clear 
float   floatStyle 
margin   margin 
margin-bottom   marginBottom 
margin-left   marginLeft 
margin-right   marginRight 
margin-top   marginTop 
padding   padding 
padding-bottom   paddingBottom 
padding-left   paddingLeft 
padding-right   paddingRight 
padding-top   paddingTop 

颜色和背景标签和属性对照 
CSS语法 (不区分大小写)   JavaScript语法 (区分大小写) 
background   background 
background-attachment   backgroundAttachment 
background-color   backgroundColor 
background-image   backgroundImage 
background-position   backgroundPosition 
background-repeat   backgroundRepeat 
color   color 
样式标签和属性对照 
CSS语法 (不区分大小写)   JavaScript语法 (区分大小写) 
display   display 
list-style-type   listStyleType 
list-style-image   listStyleImage 
list-style-position   listStylePosition 
list-style   listStyle 
white-space   whiteSpace 
文字样式标签和属性对照 
CSS语法 (不区分大小写)   JavaScript语法 (区分大小写) 
font   font 
font-family   fontFamily 
font-size   fontSize 
font-style   fontStyle 
font-variant   fontVariant 
font-weight   fontWeight 
文本标签和属性对照 
CSS语法 (不区分大小写)   JavaScript语法 (区分大小写) 
letter-spacing   letterSpacing 
line-break   lineBreak 
line-height   lineHeight 
text-align   textAlign 
text-decoration   textDecoration 
text-indent   textIndent 
text-justify   textJustify 
text-transform   textTransform 
vertical-align   verticalAlign 

obj.style方法,这个方法只能JS只能获取写在html标签中的写在style属性中的值(style="..."),看一下代码 

XML/HTML代码 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  
<html xmlns="http://www.w3.org/1999/xhtml">  
<head>  
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  
<title>JS获取CSS属性值</title>  
<style type="text/css">  
<!-- 
.ss{color:#cdcdcd;} 
-->  
</style>  
</head>  
<body>  
<div id="css88" class="ss" style="width:200px; height:200px; background:#333333">JS获取CSS属性值</div>  
<script type="text/javascript">  
alert(document.getElementById("css88").style.width);//200px   
alert(document.getElementById("css88").style.color);//空白   
</script>      
</body>  
</html> 
上面这个例子对id为"css88"的div设置了2种烦事的样式,包括style和外部样式class。 
从alert出来的信息可以看到,document.getElementById("css88").style方法获取不到class为ss的属性和值。 
那么这么样才能获取到class为ss的属性和值呢? 
IE中使用的是obj.currentStyle方法,而FF是用的是getComputedStyle 方法。 
网上一个比较方法是: 

XML/HTML代码 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  
<html xmlns="http://www.w3.org/1999/xhtml">  
<head>  
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  
<title>S获取CSS属性值</title>  
<style type="text/css">  
<!-- 
.ss{background:blue; color:#cdcdcd; width:200px} 
-->  
</style>  
</head>  
<body>  
<p id="qq" class="ss" >sdf</p>  
<script type="text/javascript">  
function GetCurrentStyle (obj, prop) {     
if (obj.currentStyle) {        
return obj.currentStyle[prop];     
}      
else if (window.getComputedStyle) {        
propprop = prop.replace (/([A-Z])/g, "-$1");           
propprop = prop.toLowerCase ();        
return document.defaultView.getComputedStyle (obj,null)[prop];     
}      
return null;   
}   
var dd=document.getElementById("qq");   
alert(GetCurrentStyle(dd,"width"));   
</script>  
</body>  
</html> 
当然,如果您是引用外部的css文件同样适用。 
另:可以将上面的方法简化为 
JavaScript代码 
function getDefaultStyle(obj,attribute){ // 返回最终样式函数,兼容IE和DOM,设置参数:元素对象、样式特性   
return obj.currentStyle?obj.currentStyle[attribute]:document.defaultView.getComputedStyle(obj,false)[attribute];   

特别说明:尊重作者的劳动成果,转载请注明出处哦~~~http://blog.yemou.net/article/query/info/tytfjhfascvhzxcytp29

时间: 2024-11-03 03:23:17

用JS控制CSS基本样式的相关文章

js控制CSS样式属性语法对照表_基础知识

CSS与JS紧密配合,为我们的页面增添了很多别致的效果.为了达到某种特殊的效果我们需要用Javascript动态的去更改某一个标签的CSS属性. 例如常用的关闭某个漂浮的广告显示:document.getElementById('ad').style.display='none';相当于:.ad{ display:none}. 下面就是JS 控制CSS样式表的语法对照: CSS语法 (不区分大小写) JavaScript语法 (区分大小写)  border border  border-bott

JS 控制CSS样式表_javascript技巧

下面先记录一下JS控制CSS所使用的方法. 1.使用javascript更改某个css class的属性... <style type="text/css"> .orig { display: none; } </style> 你想要改变把他的display属性由none改为inline. 解决办法: 在IE里: document.styleSheets[0].rules[0].style.display = "inline"; 在firef

JS控制css float属性的用法

  JavaScript与CSS属性的控制网上很常见,因此来说用js操作css属性是有一定规律的. 1.对于没有中划线的css属性一般直接使用style.属性名即可. 如:obj.style.margin,obj.style.width,obj.style.left,obj.style.position等. 2.对于含有中划线的css属性,将每个中划线去掉并将每个中划线后的第一个字符换成大写即可.如:obj.style.marginTop,obj.style.borderLeftWidth,ob

Js控制css——模仿视频网站关灯开灯

  <head>     <title></title>     <style type="text/css">         .day         {             background-color:White;         }                 .night         {             background-color:Black;         }     </style&g

用js控制css的不错的方法_CSS/HTML

中文搜索 英文搜索 国内门户 综合其它 [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

js控制css页面换肤代码

登陆 注册 选择页面风格: ee ere ere 换肤测试 换肤测试

js如何控制css伪元素内容(before,after)

原文:js如何控制css伪元素内容(before,after) js如何控制css伪元素(before,after) @(CSS 笔记)[伪元素|css3]曾经遇到的问题,在对抗UC浏览器屏蔽需要把内容输出到css 伪元素中输出.有个疑问如何用js控制它.于是在segmentfault提问,如下是对问题的整理: 如何用js控制css伪类after 简单粗暴的方式: 简单粗暴的方式,直接在html中添加样式覆盖掉之前样式规则 <style> p:after{content:'我是后缀'} <

用css和js控制UL实现的二级菜单

本文代码的运行结果: <style type="text/css"> *{margin:0px;padding:0px;} .my_nav { width:163px; font-size: 12px; font-family: Arial,Verdana,Helvetica,sans-serif; } ul /** 一级菜单 */ { list-style: none; width:163px; } ul li /** 一级菜单菜单项 */ { position: rel

js控制表单奇偶行样式的简单方法

这篇文章介绍了js控制表单奇偶行样式的简单方法,有需呀偶的朋友可以参考一下   一.如果使用JQuery的话可以直接JQuery的 复制代码 代码如下: $("tr:odd").addClass("clazzName"); $("tr:even").addClass("clazzName"); 二.如果是使用纯js的话 1.先获取table标签,var table = document.getElementById() 2.再