通过js为元素添加多项样式,浏览器全兼容写法

前端技术 2023/09/07 JavaScript

js给元素添加多项样式,浏览器全兼容示例写法:

<a href=\"javascript:;\" id=\"test\" style=\"font-size:25px;background:#080;\">测试3</a>
<script>
var obj=document.getElementById(\"test\");
var oldStyle=obj.style.cssText;
alert(oldStyle);
obj.style.cssText=\"border:2px red solid;color:#f00;\"+oldStyle;
</script>

js给元素添加多项样式,最快捷方便的是使用cssText属性,但其会重写整个style原有的值,要保留原先的style样式值,很简单,可像上示例中一样,用一个变量记录下原先的style原始值,再做一个字符串的拼接即可。

但要注意的一点是:ie8及以下浏览器obj.style.cssText返回的最后一个样式值是没分号的,形如:font-size:25px;background:#080 。只想说,ie一如既往的让人感觉不爽,呵呵。

所以示例中有意将oldStyle放置在字符串拼接的后面,这样拼接的样式字符串就算最后一个样式值没分号,也不会出问题,各浏览器样式应用显示就一致了,这也算是一个小技巧吧,没啥技术含量,但易忽略或忘记,知道自己记性不好,Mark下 ^_^

本文地址:https://www.stayed.cn/item/18794

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。