利用link标签的disabed属性大面积的对其他标签元素的CSS样式进行替换操作

来源:互联网 发布:mysql insert 函数 编辑:程序博客网 时间:2024/04/28 13:28

  由于平时对元素样式的控制基本上只是3,4个,所以一般用Jquery的时候直接使用$(element).css();这个方法,或者使用$(element).addClass()方法完成样式操作。对于小范围元素的操作来说,这是非常方便的。但是当针对众多元素同时进行操作的时候呢,这2个方法让代码看起来就比较重量级了,代码的可读性也比较小。

  过程起初,我先尝试了一种方式,就是在JS代码中动态插入link标签,引入新的样式文,但是很遗憾的是根本就不起作用,因为那个时候浏览器已经把样式渲染到页面元素了,新引入的样式文件根本就不会被浏览器执行渲染。所以我选择了另外一种方式,就是把2个样式文件同时先加载完毕,然后先禁用其中一个文件,等到在需要出现的时候,利用JS代码控制其启用,从而达到整体控制。

HTML代码片段:

<link href="/public/stylesheets/page/application/first.css" rel="stylesheet" type="text/css"><link id="second_css" disabled="true" href="/public/stylesheets/page/application/second.css" rel="stylesheet" type="text/css">

  代码中我用了2个link标签,注意看到第二个link标签中我添加了ID属性和disabled这2个属性。ID当时是用于JS便于操控,disabled用于在需要的时候取消禁用,需要的时候启动禁用,从而覆盖原有样式。由于在实际开发中,我的第一个样式文件中包含了其他许多不需要被大面积操作元素的样式,所以在操作的时候我并没有采用这种思路:

采用first.css文件 —>禁用second.css文件

或者

采用second.css文件—>禁用first.css文件

而是

  我在second.css文件中,把样式属性值都添加了!important 属性值,从而增加其显示的优先级,达到覆盖first.css文件中的样式。也就是单独的只对second.css的样式文件进行操作,当然你也可以纯粹的对2个文件进行直接操作,不需要在第二个样式文件中添加!important达到覆盖,

second.css代码片段:

.top {    position: fixed !important;    background: #FFF !important;}.logo {    background:url(/public/images/page/index/mini_logo.png) !important;}

 下面看看JS代码片段:

//禁用样式文件$(element).attr("disabled","true");    //启用样式文件    $(element).attr("disabled","false");    

 以上方法我在IE8和chrome测试通过。下图是一张disabled属性在浏览器中的支持情况:

conditionsIE(10)FirefoxChromeSafariloadCSS_1YYNYCSS_2YYYYDisabled
(Attribute)CSS_1truetruetruetrueCSS_2nullnullnullnullDisabled
(Property)CSS_1truefalsetruefalseCSS_2falsefalsefalsefalse

结语:以上是我操作样式的一种思路,当然还有其他方法,欢迎大家交流。更多关于disabled的知识可以查看一下链接:

http://www.ibm.com/developerworks/cn/web/1309_hanjz_htmldisable/

原文地址:http://www.cnblogs.com/zivxiaowei/p/3438809.html

 

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 高二了数学不好怎么办 高二函数不好怎么办啊 输乳怎么办腺病有什么妇症状 屁股上坐的发黑怎么办 车屁股撞了个洞怎么办 腰压迫的腿疼怎么办 肩胛提肌固定不住怎么办 胳膊粗后背肉多怎么办 2岁儿童 肋骨边缘外翻怎么办 5岁宝宝盆骨前倾怎么办 脖子弯了像驼背怎么办 都40周了还没生怎么办 股骨头坏死骨盆歪了怎么办 二胎侧切伤口疼怎么办 小月子盆骨酸痛怎么办 盆骨一边大一边小怎么办 快生了宫颈管长怎么办 想顺产 宫颈管长怎么办 腰和跨一样宽怎么办 脚后跟骨折手术后小腿变细怎么办 生完孩子骨盆错位怎么办 皮肤又黑又粗糙怎么办 翠研珠宝被坑了怎么办 领导是小人我该怎么办 微信二维码重置了怎么办 衣服有蝽的卵怎么办 人坐牢去了房贷怎么办 人死了欠的房贷怎么办 体育生文化没过怎么办 舍友偷了钱没证据怎么办 舍友要一直开空调怎么办 和大学室友相处不愉快怎么办 和舍友三观不合怎么办 室友欠200钱忘了怎么办 和舍友闹矛盾了怎么办 被宿舍人孤立了怎么办 分到一个爱管事的舍友怎么办 添加了村人名录怎么办 打csgo出现卡顿怎么办 csgo创意工坊下载慢怎么办 电脑全是英文死机了怎么办