CSS3新增的选择器和属性
<!doctype html>无标题文档
一、新增的选择器
CSS3新增的属性选择器{除ie6外的大部分浏览器支持) |
|||
| 序号 | 选择器 | 含义 | 实例 |
|---|---|---|---|
| 1 | E[att^="val"] | 属性att的值以"val"开头的元素 | div[id^="nav"] { background:#ff0; } |
| 2 | E[att$="val"] | 属性att的值以"val"结尾的元素 | |
| 3 | E[att*="val"] | 属性att的值包含"val"字符串的元素 | |
结构伪类选择器(过滤选择器)(注:FireFox 1.5/2.0/3.0支持E:root,FireFox 3.0支持E:last-child、E:only-child、E:empty。 由于IE6/7/8不支持,没办法,选择合适的场合用吧。) |
|||
| 序号 | 选择器 | 含义 | 实例 |
| 4 | E:root | 匹配文档的根元素,对于HTML文档,就是HTML元素 | |
| 5 | E:nth-child(n) | 匹配其父元素的第n个子元素,第一个编号为1 | p:nth-child(3) { color:#f00; } |
| 6 | E:nth-last-child(n) | 匹配其父元素的倒数第n个子元素,第一个编号为1 | p:last-child { background:#ff0; } |
| 7 | E:nth-of-type(n) | 与:nth-child()作用类似,但是仅匹配使用同种标签的元素 | p:nth-of-type(2){color:red;}选择父元素的第n个子元素p |
| 8 | E:nth-last-of-type(n) | 与:nth-last-child() 作用类似,但是仅匹配使用同种标签的元素 | |
| 9 | E:last-child | 匹配父元素的最后一个子元素,等同于:nth-last-child(1) | |
| 10 | E:first-of-type | 匹配父元素下使用同种标签的第一个子元素,等同于:nth-of-type(1) | |
| 11 | E:last-of-type | 匹配父元素下使用同种标签的最后一个子元素,等同于:nth-last-of-type(1) | |
| 12 | E:only-child | 匹配父元素下仅有的一个子元素,等同于:first-child:last-child或 :nth-child(1):nth-last-child(1) | p:only-child { background:#ff0; } |
| 13 | E:only-of-type | 匹配父元素下使用同种标签的唯一一个子元素,等同于:first-of-type:last-of-type或 :nth-of-type(1):nth-last-of-type(1) | |
| 14 | E:empty | 匹配一个不包含任何子元素的元素,注意,文本节点也被看作子元素 | p:empty { background:#ff0; } |
与用户界面(UI)有关的伪类(ie6 7 8不支持) |
|||
| 序号 | 选择器 | 含义 | 实例 |
| 15 | E:enabled | 匹配表单中激活的元素 | |
| 16 | E:disabled | 匹配表单中禁用的元素 | input[type="text"]:disabled { background:#ddd; } |
| 17 | E:checked | 匹配表单中被选中的radio(单选框)或checkbox(复选框)元素 | |
| 18 | E::selection | 匹配用户当前选中的元素 | |
级元素通用选择器ie6不支持 |
|||
| 序号 | 选择器 | 含义 | 实例 |
| 19 | E ~ F | 匹配任何在E元素之后的同级F元素 | p ~ ul { background:#ff0; } |
反选伪类(ie6 7 8 firefox3.0以下 Opera9.0不支持) |
|||
| 20 | E:not(s) | 匹配不符合当前选择器的任何元素 | :not(p) { border:1px solid #ccc; } |
:target 伪类(ie6 7 8不支持) |
|||
| 21 | E:target | 匹配文档中特定"id"点击后的效果 | |
二、css3新增属性
一. box-shadow(阴影效果)
box-shadow: 20px 10px 0 #000;
-moz-box-shadow: 20px 10px 0 #000;
-webkit-box-shadow: 20px 10px 0 #000;
FF3.5, Safari 4, Chrome 3
二. border-colors(为边框设置多种颜色)
border: 10px solid #000;
-moz-border-bottom-colors: #555 #666 #777 #888 #999 #aaa #bbb #ccc;
-moz-border-top-colors: #555 #666 #777 #888 #999 #aaa #bbb #ccc;
-moz-border-left-colors: #555 #666 #777 #888 #999 #aaa #bbb #ccc;
-moz-border-right-colors: #555 #666 #777 #888 #999 #aaa #bbb #ccc;
颜色值数量不固定, 且FF的私有写法不支持缩写: -moz-border-colors: #333 #444 #555;
三. boder-image(图片边框)
-moz-border-image: url(exam.png) 20 20 20 20 repeat;
-webkit-border-image: url(exam.png) 20 20 20 20 repeat;
(1). 20 20 20 20 ---> 边框的宽度, 分别对应top, right, bottom, left边框, 改变宽度可以实现不同的效果;
(2). 边框图片效果(目前仅实现了两种):
repeat --- 边框图片会平铺, 类似于背景重复;
stretch --- 边框图片会以拉伸的方式来铺满整个边框;
(3). 必须将元素的边框厚度设置为非0非auto值.
FF 3.5, Safari 4, Chrome 3
四. text-shadow(文本阴影)
text-shadow: [<颜色><水平偏移><纵向偏移><模糊半径>] || [<水平偏移><纵向偏移><模糊半径><颜色>];
(1) <颜色>和<模糊半径>是可选的, 当<颜色>未指定时, 将使用文本颜色; 当<模糊半径>未指定时, 半径值为0;
(2) shadow可以是逗号分隔的列表, 如:
text-shadow: 2px 2px 2px #ccc, 3px 3px 3px #ddd;
(3) 阴影效果会按照shadow list中指定的顺序应用到元素上;
(4) 这些阴影效果有可能相互重叠, 但不会叠加文本本身;
(5) 阴影可能会跑到容器的边界之外, 但不会影响容器的大小.
FF 3.5, Opera 10, Safari 4, Chrome 3
五. text-overflow(文本截断)
text-overflow: inherit | ellipsis | clip ;
-o-text-overflow: inherit | ellipsis | clip;
(1) 还有一个属性ellipsis-word, 但各浏览器均不支持.
IE6+, Safari4, Chrome3, Opera10
六. word-wrap(自动换行)
word-wrap: normal | break-word;
IE6+, FF 3.5, Safari 4, Chrome 3
七. border-radius(圆角边框)
-moz-border-radius: 5px;
-webkit-border-radius: 5px;
FF 3+, Safari 4 , Chrome 3
八. opacity(不透明度)
opacity: 0.5;
filter: alpha(opacity=50); /* for IE6, 7 */
-ms-filter(opacity=50); /* for IE8 */
九. box-sizing(控制盒模型的组成模式)
box-sizing: content-box | border-box; // for opera
-moz-box-sizing: content-box | border-box;
-webkit-box-sizing: content-box | border-box;
1. content-box:
使用此值时, 盒模型的组成模式是, 元素宽度 = content + padding + border;
2. border-box:
使用此值时, 盒模型的组成模式是, 元素宽度 = content(即使设置了padding和border, 元素的宽度
也不会变).
FF3+, Opera 10, Safari 4, Chrome 3
十. resize(元素缩放)
resize: none | both | horizontal | vertical;
1. 必须将元素的overflow属性设置为auto或hidden, 该属性才能起作用(overflow设置为visible时, 无效);
2. 属性值说明:
(1). none --> 禁用缩放;
(2). both --> 可同时缩放宽度和高度;
(3). horizontal --> 仅能缩放宽度;
(4). vertical --> 仅能缩放高度;
safari 4, chrome 3
十一. outline(外边框)
outline: 边框厚度 边框样式 边框颜色;
outline-offset: 偏移值;
outline-offset需要独立写, 简写是无效的.
FF3+, safari 4, chrome 3, opera 10
十二. background-size(指定背景图片的尺寸)
-o-background-size: [length | percentage] {1, 2};
-webkit-background-size: [length | percentage] {1, 2};
-o-background-size: 50px 60px;
-webkit-background-size: 50px 60px;
这会将背景图片的宽设置了50px, 高60px.
safari 4, chrome 3, opera 10
十三. background-origin(指定背景图片从哪里开始显示)
-webkit-background-origin: border | padding | content;
-moz-background-origin: border | padding | content;
(1) border --> 从border区域开始显示背景;
(2) padding --> 从padding区域开始显示背景;
(3) content --> 从content区域开始显示背景;
1. 必须先指定background属性, 然后才能指定该属性, 如果该属性出现在background属性之前,
safari 4, chrome 3, FF 3+
十四. background-clip(指定背景图片从什么位置开始裁切)
-webkit-background-origin: border-box | padding-box | content-box | no-clip;
(1) border-box --> 从border区域向外裁剪背景;
(2) padding-box --> 从padding区域向外裁剪背景;
(3) content-box --> 从content区域向外裁剪背景;
(4) no-clip --> 不裁切背景.
1. 必须先指定background属性, 然后才能指定该属性, 如果该属性出现在background属性之前,
safari 4, chrome 3
十五. background(为一个元素指定多个背景)
background: [background-image] | [background-origin] | [background-clip] | [background-repeat] | [background-size] | [background-position]
background: url(bg1.png) no-repeat left top, url(bg2.png) no-repeat right bottom;
safari 4, chrome 3
十六. hsl(通过色调, 饱和度, 亮度来指定颜色值)
hsl: ( <length> || <percentage> || <percentage>);
(1) length: h(色调), 0(或360)表示红色, 120表示绿色, 240表示蓝色;
(2) percentage: s(饱和度), 取值为0%到100%之间的值;
(3) percentage: l(亮度), 取值为0%到100%之间的值;
background: hsl(240, 50%, 100%);
color: hsl(100, 80, 100%);
safari 4, chrome 3, FF3, opera 10
十七. hsla(在hsl的基础上上增加了一个透明度设置)
hsla: ( <length> || <percentage> || <percentage> || <opacity>);
(1) opacity: a(透明度), 取值在0到1之间;
background: hsl(240, 50%, 100%, 0.5);
color: hsl(240, 50%, 100%, 0.5);
safari 4, chrome 3, FF3, opera 10
十八. rgba(基于r,g,b三个颜色通道来设置颜色值, 通过a来设置透明度)
rgba: (r, g, b, opacity);
(1) r: 红色, 正整数 | 百分数;
(2) g: 绿色, 正整数 | 百分数;
(3) b: 蓝色, 正整数 | 百分数;
(4) a: 透明度, 取值在0到1之间;
(5) 正整数在0到255之间, 百分数在0%到100%之间.
rgba: (100%, 244, 0, 0.5);
safari 4, chrome 3, FF3, opera 10
a:hover{transition: color 0.15s linear 0s, background-color 0.3s linear 0s;}
-webkit-transition:color 0.15s linear 0s, background-color 0.3s linear 0s;
-moz-transition:color 0.15s linear 0s, background-color 0.3s linear 0s;
-o-transition:color 0.15s linear 0s, background-color 0.3s linear 0s;
-ms-transition:color 0.15s linear 0s, background-color 0.3s linear 0s;
transition:color 0.15s linear 0s, background-color 0.3s linear 0s;
CSS3新增的选择器和属性的更多相关文章
- CSS3新增(选择器{属性选择器,结构伪类选择器,伪元素选择器})
1.属性选择器 属性选择器,可以根据元素特定的属性来选择元素,这样就不用借助 类 或者 id选择器. E [ att ] 选择具有 att 属性的 E 元素 例如:input [ value ...
- CSS3新增的选择器
1. 层次选择器 子元素选择器: 只选择子元素 父选择器 > 子选择器 后面紧相邻的兄弟元素: 选择器1 + 选择器2 后面所有的兄弟元素: 选择器1 ~ 选择器2 2.属性选择器 ...
- css3新增的属性有哪些
徐先森讲web CSS3新增的属性有哪些: CSS 用于控制网页的样式和布局. CSS3 是最新的 CSS 标准. CSS3新增了很多的属性,下面一起来分析一下新增的一些属性: 1.CSS3边框: b ...
- CSS3新增的属性有哪些:
CSS 用于控制网页的样式和布局. CSS3 是最新的 CSS 标准. CSS3新增了很多的属性,下面一起来分析一下新增的一些属性: 1.CSS3边框: border-radius:CSS3圆角边框. ...
- css3新增功能
CSS3新增功能 1 CSS3选择器详解 1.1 基础选择器 通配选择器* 元素选择器E ID选择器#id CLASS选择器.class 群组选择器select1,selectN 1.2 层次选择器 ...
- CSS系列:CSS3新增选择器
1. CSS1定义的选择器 选择器 类型 说明 E 类型选择器 选择指定类型的元素 E#id ID选择器 选择匹配E的元素,且匹配元素的id为“id”,E选择符可以省略. E.class 类选择器 选 ...
- css3新增属性API
写在前面:由于CSS5标准还未完全订下来,所以各种内核的浏览器都有自己的标准,为了不使属性混淆,所以各家在各自标准前加了一个前缀. -moz- 主要是firefox火狐 -webikt-主要是chr ...
- 什么是CSS盒模型及利用CSS对HTML元素进行定位的实现(含h5/css3新增属性)
大家好,很高兴又跟大家见面了!本周更新博主将给大家带来更精彩的HTML5技术分享,通过本周的学习,可实现大部分的网页制作.以下为本次更新内容. 第四章 css盒模型 <!DOCTYPE html ...
- 认识CSS3新增选择器和样式
前端之HTML5,CSS3(二) CSS3新增选择器和样式 CSS3新增选择器 结构伪类选择器 :first-child:选取父元素中的第一个子元素的指定选择器 :last-child:选取父元素中的 ...
随机推荐
- 让 MySQL 在 Linux 下表名不区分大小写(实为表名全小写)
把 Windows 下的应用部署到 Linux 下,使用到了 Quartz 集群的特性,所以建了 MySql 的中间表,一启动看到报错: Invocation of init method faile ...
- XPlane android 2D手游开发实战
android 飞行射击游戏类 采用 xamarin 跨平台开发技术 纯C#语言编写 操作简单 1.手指拖动飞机 躲避敌机 2.通过吃敌机爆炸后遗落的物品增加各种属性 3.双击战机放大技能 4.目前 ...
- python中文乱码问题
在学习python的时候,当我要print中文的时候,会出现以下提示: py = '你好,世界!'print py File "n2.py", line 1 SyntaxError ...
- python 中的decorator
python 中decorator的作用就是一个包装的作用,所谓包装指在执行真正的函数之前或者之后,我们可以有一些额外的发挥余地. decorator形式如下 def dec(arg1): print ...
- javaScript 将json字符串转换为json对象的方法解析
JSON字符串: var str1 = '{ "name": "cxh", "sex": "man" }'; JSON对 ...
- jquery中focus()函数实现当对象获得焦点后自动把光标移到内容最后
代码如下: setFocus=function(id){ var t=$("#"+id).val(); $("#"+id).val(""). ...
- JS判断日期是否在同一个星期内,和同一个月内
今天要用到判断日期是否在同一个星期内和是否在同一个月内,在网上找了好一会儿也没找到合适的,然后自己写了一个方法来处理这个问题,思路就不详细介绍了,直接附上代码,自己测试了一下 没有问题,若有问题请在评 ...
- http websocket
套接字 http 协议 tcp/ip协议 服务器端口 网络协议 http://wenku.it168.com/d_001406013.shtml 跨源 AJAX 事件驱动 http://www.lin ...
- [SAP ABAP开发技术总结]ABAP调优——代码优化
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- Jmeter 学习(三)
1. 线程组知识 1)Ramp-up period 表示多长时间内建立全部的线程数N 默认为0,表示测试开始即建立全部线程并立即发送访问请求 设置为Ts,表示每隔T/N建立一个线程 注1:一般不设置为 ...