【注】attr(),prop(),val()的用法结构和css()一致,可参考

css()函数用于设置或返回当前jQuery对象所匹配的元素的css样式属性值

该函数属于jQuery对象(实例)。如果需要删除指定的css属性,请使用该函数将其值设为空字符串("")。

语法

css()函数有以下两种用法:

用法一

jQueryObject.css( propertyName [, value ] )

设置或返回指定css属性propertyName的值。

  • 如果指定了value参数,则表示设置css属性propertyName的值为value
  • 如果没有指定value参数,则表示返回css属性propertyName的值。

用法二

jQueryObject.css( object )

以对象形式同时设置任意多个属性的值。对象object的每个属性对应propertyName,属性的值对应value

注意:
1、如果省略了value参数,则表示获取属性值;如果指定了该参数,则表示设置属性值。
2、css()函数的所有"设置"操作针对的是当前jQuery对象所匹配的每一个元素;所有"读取"操作只针对第一个匹配的元素。

参数

请根据前面语法部分所定义的参数名称查找对应的参数。

参数 描述
propertyName String/Array类型指定的css属性名称(用于设置或返回),或者css属性名称数组(仅用于返回)。
value 可选/String/Number/Function类型指定的属性值,或返回属性值的函数。
object Object类型指定的对象,用于封装多个键值对,同时设置多项属性。

jQuery 1.4 新增支持:参数value可以是函数,css()将根据匹配的所有元素遍历执行该函数,函数中的this指针将指向对应的DOM元素。css()还会为函数传入两个参数:第一个参数就是该元素在匹配元素中的索引,第二个参数就是该元素css属性propertyName当前的值。函数的返回值就是为该元素的css属性propertyName设置的值。

jQuery 1.9 新增支持:如果是"获取"操作(仅限"获取"操作),参数propertyName还可以是多个css属性名称组成的数组,css()将以对象形式返回多个css属性(对象的属性名称对应css属性名称,属性值对应css属性值)。

返回值

css()函数的返回值是任意类型,返回值的类型取决于当前css()函数执行的是"设置"操作还是"读取"操作。

如果css()函数执行的是"设置"操作,则返回当前jQuery对象本身;如果是"读取"操作,则返回读取到的属性值,带单位。

如果当前jQuery对象匹配多个元素,返回属性值时,css()函数只以其中第一个匹配的元素为准。如果该元素没有指定的属性,则返回undefined

第二个参数是函数的用法:

    这个函数会针对匹配的元素集中的每个元素都调用一次,调用后的返回值将作为属性的值

        $(document).ready(function() {
            $('div.chapter a').attr({
              rel: 'external',
                title: 'Learn more at Wikipedia',
              id: function(index, oldValue) {
                return 'wikilink-' + index;
                }
            });
          });
每次触发值回调,都会给它传入两个参数。第一个是一个整数,表示迭代次数,我们在此利用这个值为第一个链接生成的 id 是 wikilink-0 ,为第二个链接生成的 id 是 wikilink-1 ,以此类推。代码清单5-3并没有用到第二个参数,这个参数中保存的是修改之前属性的值。

注意事项

1、如果参数value为空字符串(""),则表示删除该css属性。

2、对于多个单词构成的css属性,你可以使用其css格式("-")或者DOM格式(驼峰式),jQuery都能理解。例如background-color,你可以将propertyName设为background-colorbackgroundColor。建议优先以驼峰式来获取(jQuery底层也是通过DOM来获取的,DOM元素的属性均以驼峰式命名)。

3、有些时候获取到的css属性值与你在样式表中设置的值并不完全相同。例如:某些表示尺寸的属性值,你可能在样式表中设置的单位是em、px、ex或者%,但jQuery获取的是经过浏览器计算后css属性值,其单位多数情况下为像素。此外,不同浏览器对于颜色(color)属性值的文本表示也不一致,以white为例,浏览器可能返回white#FFF#ffffffrgb(255,255,255)等,当然它们在逻辑上都表示白色。

4、对于一些速写的css属性,例如marginpaddingbackgroundborder。尽管某些浏览器提供了此功能,但它的结果是无法保证的,有些浏览器也并不支持。以margin为例,你可能需要通过css("marginTop")css("marginRight")等方式来分别获取。从jQuery 1.9开始,你可以传入一个数组来获取多个css属性(以对象形式返回)。

示例&说明

以下面这段HTML代码为例:

<p id="n1" style="font-size: 16px; font-weight:bold; color: #333; margin: 10px 5px;">CodePlayer</p>
<p id="n2" style="font-size: 14px; font-weight:bold; color: #aacd12; padding: 5px ; border: 1px solid #000;">专注于编程开发技术分享</p>

我们编写如下jQuery代码:

var $n1 = $("#n1");
var $n2 = $("#n2"); document.writeln( $n1.css("fontSize" /* 或者"font-size" */ ) );
document.writeln( $n1.css("margin") ); // Chrome:10px 5px | FireFox和IE下无输出
document.writeln( $n1.css("marginTop") ); // 10px (所有浏览器均支持)
document.writeln( $n1.css("marginLeft") ); // 5px (所有浏览器均支持) // 取消n1的粗体
$n1.css("fontWeight", "normal"); // 更改n2的背景色和字体
$n2.css( { backgroundColor: "#efefef", "font-family": '"Microsoft Yahei"' } ); var styleObj = $n2.css( ["paddingTop", "paddingRight", "paddingBottom", "paddingLeft"] );
document.writeln( styleObj.paddingTop ); // 5px
document.writeln( styleObj.paddingRight ); // 5px // 删除n2的border属性
$n2.css("border", ""); // 更改所有p元素的font-weight属性
// 如果是粗体就还原,不是粗体就加粗
$("p").css("fontWeight", function(index, value){
    return value == "bold" ? "normal" : "bold";    
});

jquery之 css()方法。用法类似的有attr(),prop(),val()的更多相关文章

  1. jQuery中on()方法用法实例

    这篇文章主要介绍了jQuery中on()方法用法,实例分析了on()方法的功能.定义及在匹配元素上绑定一个或者多个事件处理函数的使用技巧,需要的朋友可以参考下 本文实例讲述了jQuery中on()方法 ...

  2. jQuery中eq()方法用法实例

    本文实例讲述了jQuery中eq()方法用法.分享给大家供大家参考.具体分析如下: 此方法能够获取匹配元素集上的相应位置索引的元素. 匹配元素集上元素的位置索引是从0开始的. 语法结构: 复制代码 代 ...

  3. jQuery HTML CSS 方法

    jQuery HTML / CSS 方法 下面的表格列出了所有用于处理 HTML 和 CSS 的 jQuery 方法. 下面的方法适用于 HTML 和 XML 文档.除了:html() 方法. 方法 ...

  4. jQuery中on()方法用法实例详解

    这篇文章主要介绍了jQuery中on()方法用法,实例分析了on()方法的功能及各种常见的使用技巧,并对比分析了与bind(),live(),delegate()等方法的区别,需要的朋友可以参考下 本 ...

  5. jQuery中index()方法用法实例

    本文实例讲述了jQuery中index()方法用法.分享给大家供大家参考.具体分析如下: 此方法可以搜索匹配元素,并返回元素的索引值.索引值是从0开始的. 语法结构一: 当此方法没有参数的时候,返回值 ...

  6. jQuery的css()方法

    jQuery的css()方法下面的代码可以为div一次性设置多个样式属性<!DOCTYPE html><html><head><meta charset=&q ...

  7. jQuery中animate()方法用法实例

    本文实例讲述了jQuery中animate()方法用法.分享给大家供大家参考.具体分析如下: 此方法用于创建自定义动画,并且能够规定动画执行时长.擦除效果.动画完成后还可以地触发一个回调函数. ani ...

  8. Jquery中css()方法获取边框长度

    1. JQuery中可以使用css()方法获取块元素的边框宽度,如下: $("divMode").css("border-left-width");//左边框长 ...

  9. jQuery HTML/CSS 方法大全

    下表列出了用于操作HTML和CSS的所有方法. 方法 描述 addClass() 向所选元素添加一个或多个类名 after() 在所选元素之后插入内容 append() 在所选元素的末尾插入内容 ap ...

随机推荐

  1. 【转】“C语言说到底是一门以内存为中心的编程语言” —— 这种说法正确吗?

    转自:http://weibo.com/1005903613/AAgqA3kb4  LAW张粑粑的微博

  2. Reporting Service报表项默认可见+号和-号的显示问题

    在Reporting Service里面可以设置报表项(组.tablix行.tablix列.文本框等所有SSRS报表项)的可见性,并且可以设置某个报表项的可见性由点击另外一个报表项来控制,比如报表项A ...

  3. 【python cookbook】【数据结构与算法】10.从序列中移除重复项且保持元素间顺序不变

    问题:从序列中移除重复的元素,但仍然保持剩下的元素顺序不变 解决方案: 1.如果序列中的值时可哈希(hashable)的,可以通过使用集合和生成器解决.

  4. pstack使用和原理【转】

    转自:http://www.cnblogs.com/mumuxinfei/p/4366708.html 前言: 最近小组在组织<<深入剖析Nginx>>的读书会, 里面作者提到 ...

  5. nexus启动不了

    nexus一分钟前还能正常启动,突然就启动不了,看了下启动文件,变成0KB就知道什么问题了,文件被系统洗了. 解决方案:重新解压缩文件包里复制一个过来.

  6. 通达OA 免狗迁移到公网 的另类解决办法

    1,通达OA 发布到公网 ,要真正的 Anywhere2,正版通达OA,有加密狗在本地机器上 ,通达必须检测有狗才可以运行3,阿里云服务器  (你想往上插加密狗都没地方的说..汗)4,本地ISP 不提 ...

  7. c#调用c++的dll,错误篇

    "LIPS.vshost.exe"(托管(v4.0.30319)): 已加载"C:\Windows\Microsoft.Net\assembly\GAC_MSIL\Sys ...

  8. java静态块

    一般情况下,如果有些代码必须在项目启动的时候就执行的时候,需要使用静态代码块,这种代码是主动执行的 静态代码块的初始化顺序  class Parent{ static String name = &q ...

  9. Pots 分类: 搜索 POJ 2015-08-09 18:38 3人阅读 评论(0) 收藏

    Pots Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 11885 Accepted: 5025 Special Judge D ...

  10. python中字符串\r的奇怪问题

    示例: 我这里有一字符串: u'北京市工商行政管理局大兴分局\r <a onclick="showJDS(\'fa641bb3be5b44a1b618433833982fee\',\' ...