jq: css样式

本文详细介绍了如何使用jQuery操作CSS样式,包括获取和设置单个及多个CSS属性值的方法,如width、height等,并解释了.css()、width()、height()、offset()和position()等函数的区别与用法。

获取单个css属性值,传属性名,返回字符串

获取多个css属性值,传数组,返回对象

        <html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>css样式</title>
    <style>
     .one {
         width: 100px;
         height: 100px;
         border: 1px solid #ff6700;
        }
    </style>
</head>
<body>
    <div class="one">div</div>
    <script src="http://code.jquery.com/jquery-3.4.1.js"></script>
    <script>
     $('.one').click(function() {
         console.log($(this).css('width'));
         console.log($(this).css(['width', 'border']))
        })
    </script>
</body>
</html>
      

v2-29f8ef0341e82f45c3478c0cd21c6e59_b.jpg

单个属性设置值的时候再第二参数传值即可,如果是长度比如width,height之类,可以直接写数字(还可以直接+),单位默认px。

        $('.one').click(function() {
    $(this).css('width', '+=100');
})

      

v2-9468c55dd574111f0c0c085ec2dd98ff_b.gif

如果是多个属性,可以传对象:

        $('.one').click(function() {
    $(this).css({'width':'+=10', height: '+=10'});
})

      

v2-87ae421a4e00b0f4b5eb4e83e3401567_b.gif

width() / height()方法: 赋值的时候可以是字符,也可以是数字

        console.log( $('.one').css('width') ) // 返回字符串
console.log( $('.one').width() ) // 返回数字

      

这两个方法都是获取宽度,但是一个返回字符串,一个返回数字

v2-f3ad7c1fc874110b6668c5a37b9b59d2_b.jpg

获取盒子不同位置的宽度:

        console.log( $('.one').width() ) // content
console.log( $('.one').innerWidth() ) // content + padding
console.log( $('.one').outerWidth() ) // content + padding + border
console.log( $('.one').outerWidth(true) ) // content + padding + border + margin

      

v2-a1a2762b2864d5b2f8e0dd914994dea7_b.jpg

设置宽度的值: 会缩的只有content区域,margin border padding都不会缩。

        $('.one').innerWidth(50)

      

v2-78460d226632dce65ef005f8da4013ba_b.jpg

offset() position()方法:

        console.log( $('.one').offset() )   // 相对于文档而言的位置
console.log( $('.one').position() ) // 相对于最近有定位的父级而言

      

v2-5f38e071d9cecf5b855e9c124f132be2_b.jpg

109包含了100px(top)+1px(border)+margin(8pxbody默认margin)

设值: 使用对象键值对形式传即可

        console.log( $('.one').offset({'top': 50}) )

      

v2-088f789ae2c410b7cdad40b2b363eb28_b.jpg

position()方法有点特别,有时间再看。

scrollTop() / scrollLeft() 查看滚动条的位置

v2-b3128ce28e590b95fa5139277190239d_b.jpg

v2-161e81f9053d88dbef83ae64da86ca2e_b.jpg

也可以设置值

v2-14dfde16e80fc9e290ef40f4243d4b6c_b.jpg

有时间可以做一个自动阅读的滚动条

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值