css|css 选择器中的正则表达式
正则表达式在任何语言中都有使用,只是使用的形式不一样而已
css也是一门语言,也有自己的正则表达式
正则表达式中的一些通用规则:
1 ^ 表示字符串开始位置匹配
2 $表示字符串结束为止匹配
3 *表示字符串任意位置匹配
4 i表示字符串匹配不区分大小写
5 g 表示字符串全局匹配
css属性选择器与正则表达式:
1 [attr="val"] 选择attr属性值只为val的元素
2[attr]选择有attr这个属性的元素(区分大小写)
3 [attr~="val"] 选择属性为attr,并且属性值包含val单词的元素(区分大小写)|| 错误的:
4 [attr$="val"]选择属性attr的值结尾为val字符的元素 (区分大小写)|| 错误的:
5[attr^="val"]选择属性attr的值开头为val字符的元素 (区分大小写)|| 错误的:
6 [attr*="val"]选择属性attr的值任意位置包含val字符的元素(区分大小写)
7 [attr|="val"] 选择属性attr的值开头为val的单词或者为val-单词的元素(区分大小写)div attr="val"/>|| 错误的:
8 [attr*="val" I]或者[attr*="val" i]选择属性attr的值任意位置包含val或者VAL或者 Val 或者vAl或者 vaL字符(不区分大小写)的元素<
div attr="Val"/>
目前Chrome, FireFox, Safari已支持i
正则,但是ie不支持不区分大小写,别的属性选择器ie7+都都支持
ie7的一些特点:
1 ie7 不认识原生的[checked]属性
在ie7下解析[checked]为[CHECKED]全部大写化,这时候的属性应该是defaultChecked
2 ie7 不认识部分的只用属性选择器:[type='checkbox'] { display:none;
} 这样定义是不起作用的,需要改成例如:input[type='checkbox'] { display:none;
} 但是id就可以例如#demo{ display:none;
}是起作用的
3 ie7中属性名是严格区分大小写的,在html和css中不区分的
【css|css 选择器中的正则表达式】转载于:https://www.cnblogs.com/xiaofenguo/p/6134303.html
推荐阅读
- 热闹中的孤独
- JS中的各种宽高度定义及其应用
- 我眼中的佛系经纪人
- 《魔法科高中的劣等生》第26卷(Invasion篇)发售
- Android中的AES加密-下
- 标签、语法规范、内联框架、超链接、CSS的编写位置、CSS语法、开发工具、块和内联、常用选择器、后代元素选择器、伪类、伪元素。
- 放下心中的偶像包袱吧
- C语言字符函数中的isalnum()和iscntrl()你都知道吗
- C语言浮点函数中的modf和fmod详解
- C语言中的时间函数clock()和time()你都了解吗