首页 > web前端 > js教程 > jquery设置内联样式css()

jquery设置内联样式css()

无忌哥哥
发布: 2018-06-29 14:02:25
原创
4795 人浏览过

jquery设置内联样式css()

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>设置内联样式css()</title>
<style type="text/css">
.box1 {
width: 300px;
height: 300px;
background-color: wheat;
position: relative;
}
.box2 {
width: 100px;
height: 100px;
background-color: coral;
position: absolute;
top: 50px;
left: 100px;
}
</style>
</head>
<body>
<img src="../images/jsy.jpg">
<div>
<div></div>
</div>
</body>
</html>
登录后复制

css()方法与attr()方法很相似,也是自带读到与设置特征

根据参数数量确定要执行的操作,一个参数是读取,二个参数是设置

功能相当于读到或设置当前元素的style属性的值,其实就是内联样式

1.设置样式 css(name,value)

var res = $(&#39;img&#39;).css(&#39;width&#39;,200)
var res = $(&#39;img&#39;).css(&#39;border-radius&#39;, &#39;10%&#39;)
var res = $(&#39;img&#39;).css(&#39;box-shadow&#39;, &#39;3px 3px 3px #888&#39;)
var res = $(&#39;img&#39;).css({
&#39;width&#39;: &#39;200&#39;,
&#39;border-radius&#39;: &#39;10%&#39;,
&#39;box-shadow&#39;: &#39;3px 3px 3px #888&#39;
})
登录后复制

2.读取样式 css(name),返回的都是字符串类型

var res = $(&#39;img&#39;).css(&#39;box-shadow&#39;)
var res = $(&#39;img&#39;).css(&#39;width&#39;)
登录后复制

因为返回的是字符串,所以对于宽高等数据,如果要计算,就必须先转为数值型

var res = parseInt($(&#39;img&#39;).css(&#39;width&#39;), 10) //200
res += 50
var res = $(&#39;img&#39;).css(&#39;width&#39;,res+&#39;px&#39;)
登录后复制

可以看出这样的操作是很麻烦的,但是宽高计算又使用的非常频繁

所以jquery针对宽高样式有二个专用方法: width()和height()

3.width()和height()方法

将图片宽高设置为200,单位默认为px

var res = $(&#39;img&#39;).width(200)
var res = $(&#39;img&#39;).width(&#39;200&#39;)
var res = $(&#39;img&#39;).width(&#39;200px&#39;)
var res = $(&#39;img&#39;).width(&#39;200pt&#39;)
登录后复制

等价于:

var res = $(&#39;img&#39;).css(&#39;width&#39;,200)
登录后复制

设置宽高就更简单了,支持运算符的简写

var res = $(&#39;img&#39;).width(&#39;+=100&#39;)
var res = $(&#39;img&#39;).width()  //300
登录后复制

等价于:

var res = $(&#39;img&#39;).css(&#39;width&#39;,&#39;+=50&#39;)
var res = $(&#39;img&#39;).width()  //250
登录后复制

height()高度方法,用法与width()完全一致,请大家自行测试

除了宽高之年,获取元素当前的位置也是经常要用到的操作,jquery也定义了快捷方法

4.获取元素的位置:offset(),返回的是一个对象

var res = $(&#39;img&#39;).offset()
登录后复制

查询距离左边和顶部的偏移量

var res = $(&#39;img&#39;).offset().left
var res = $(&#39;img&#39;).offset().top
登录后复制

可以看到这个操作反映的是元素在普通文档流的位置

如果元素采用了绝对定位,那么如何查看它在父级区块中的偏移量呢?

5.查看绝对定位元素的偏移量: position()

var res = $(&#39;.box2&#39;).position().left
var res = $(&#39;.box2&#39;).position().top
登录后复制

offset()和position()方法仅适用于页面中的可视元素,并且仅能获取,不能设置

类似的还有scrollLeft()返回水平滚动条位置,scrollTop()返回垂直滚动条的位置,大家自行测试

控制台查看结果

console.log(res)
登录后复制

以上是jquery设置内联样式css()的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板