利用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属性在浏览器中的支持情况:
(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
- 利用link标签的disabed属性大面积的对其他标签元素的CSS样式进行替换操作
- <link>标签的属性
- CSS 标签的样式
- Dom 中对外联(link标签)css样式的添加和删除
- link 标签的 title 属性
- CSS对<a>标签的操作
- 走入javascript(四)操作标签属性操作css样式[]的使用
- jQuery对标签属性的操作
- jquery操作父标签中的子标签的CSS属性
- 标签、元素、属性、样式的关系与区别
- A标签的css样式
- A标签的css样式
- A标签的css样式
- A标签的css样式
- a标签的样式属性
- CSS中关于字体样式p标签的属性
- 旋转元素的css标签
- HTML的元素、标签、属性
- 【新浪100级博客地址】
- 【索引】二叉树
- 【索引】图与图的遍历
- 麦克阿瑟
- Sobel算子及cvSobel
- 利用link标签的disabed属性大面积的对其他标签元素的CSS样式进行替换操作
- group by 随机数 查询保存到临时表
- 欧拉回路
- 使用正则表达式验证非零的正整数
- NYOJ 469 擅长排列的小明 II
- LeetCode String to Integer (atoi) 字符串转换整数
- 使用正则表达式验证一年的12个月份
- 一定区域内对象 用的比较多
- 淘宝diamond使用