打个比方吧,css样式就像是那种拎包入住的新房,所有装修都是在你入住前就搞好的;而jquery设置的样式(其实就是通过js动态设置css样式)则是在你入住后才做的各种后期装饰(对原来的装修进行各种或大或小的修改,甚至可以是完全推翻重来)。
专注于为中小企业提供网站设计、成都网站建设服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业华安免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上千企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
如果你的页面不需要什么复杂的特效,那么就用css样式即可,这是最高效、最节省资源的方式。而如果你的页面需要很多复杂的、光靠静态的css样式无法应付的时候,这才需要用jquery(或者原生js)来动态改变css样式。
其实严格来说这两者不属于同一范畴,不具有可比性,你能提出这样的问题,说明你对这个还是没有足够的理解。
//1、获取和设置样式
$("#tow").attr("class");//获取ID为tow的class属性
$("#two").attr("class","divClass");//设置Id为two的class属性。
//2、追加样式
$("#two").addClass("divClass2");//为ID为two的对象追加样式divClass2
//3、移除样式
$("#two").removeClass("divClass");//移除 ID为two的对象的class名为divClass的样式。
$(#two).removeClass("divClass divClass2")移除多个样式。
//4、切换类名
$("#two").toggleClass("anotherClass") ;//重复切换anotherClass样式
//5、判断是否含有某项样式
$("#two").hasClass("another")==$("#two").is(".another");
//6、获取css样式中的样式
$("div").css("color");// 设置color属性值. $(element).css(style)
//设置单个样式
$("div").css("color","red");
//7设置多个样式
$("div").css({fontSize:"30px",color:"red"});
$("div").css("height","30px")==$("div").height("30px");
$("div").css("width","30px")==$("div").height("30px");
js:
el.style.display = 'value' // el 为DOM元素,display为要设置的属性(width,height,等,采用驼峰式命名法),value为想要设置的值
jQ
$('.class').css('name', 'value');
或者
$('.class').css({
name1: value1,
name2: value2,
'backgroud-color': 'red'
})
键值可以使用驼峰式命名法
可以用jquery中的css()方法;
css()有两个参数。第一个参数是必选参数,一般是指css样式中的属性。第二个参数是可选参数,一般是指css样式中属性的值。当只有第一个参数是,则是指获取该属性的值。如果也有第二个参数,那就是表示改变属性的值。
示例如下:
!doctype html
html
head
meta charset='utf-8' /
title/title
script type="text/javascript" language="javascript" src='jquery.js'/script
script language='javascript'
$(function(){
$('#btn1').click(function(){
//css()为一个参数
var divWid=$('#div-box').css('width');
alert(divWid);
});
$('#btn2').click(function(){
//css()为两个参数
var divWid=$('#div-box').css('background','#00f');
});
})
/script
style type="text/css"
#div-box {width:200px;height:100px;background:#f00;}
/style
/head
body
div id="div-box"/div
input type='button' id='btn1' value='提取' /
input type='button' id='btn2' value='改变' /
/body
/html
首先我们看一下css伪元素是什么:
CSS 伪元素用于向某些选择器设置特殊效果。
伪元素有哪些:
:first-line 伪元素:"first-line" 伪元素用于向文本的首行设置特殊样式。
:first-letter 伪元素:"first-letter" 伪元素用于向文本的首字母设置特殊样式。
:before 伪元素:":before" 伪元素可以在元素的内容前面插入新内容。
:after 伪元素:":after" 伪元素可以在元素的内容之后插入新内容。
伪元素例子:
.flow_ball1:after {
content: "";
position: absolute;
top: 50%;
margin-top: -1px;
left: 100%;
margin-left: 0.133333rem;
width: 1.786667rem;
height: 2px;
background-color: #ff6600;
border-radius: 0.053333rem;
在名为flow_ball1的class标签后面添加一道橘色横线(类似于流程图那种)
那么,问题来了,怎么用jquery改变伪元素的样式呢?
答案在这里:
$('.flow_ball1').append("style#fafang::after{display:none}/style");