css3选择器(css3选择器语法结构)

资讯2年前 (2022)发布 AI工具箱
33 0 0

本文主要讲的是css3选择器,以及和css3选择器语法结构相关的知识,如果觉得本文对您有所帮助,不要忘了将本文分享给朋友。

css3的选择器有哪些?

css3选择器如下:

一、通配符选择器(*)

通配符选择器是用来选择所有元素,,也可以选择某个元素下的所有元素。

二、元素选择器(E)

元素选择器,是css选择器中最常见而且最基本的选择器。

三、类选择器(.className)

类选择器是以一独立于文档元素的方式来指定样式,使用类选择器之前需要在html元素上定义类名

四、id选择器(#ID)

ID选择器和上面说的类选择器是很相似的,在使用ID选择器之前也需要先在html文档中加注ID名称,这样在样式选择器中才能找到相对应的元素,不同的是ID选择器是一个页面中唯一的值,我们在类使用时是在相对应的类名前加上一个“.”号(.className)而id选择器是在名称前使用"#"如(#id),

五、后代选择器(E F)

后代选择器也被称作包含选择器,所起作用就是可以选择某元素的后代元素,比如说:E 

F,前面E为祖先元素,F为后代元素,所表达的意思就是选择了E元素的所有后代F元素,请注意他们之间需要一个空格隔开。

六、子元素选择器(Egt;F)

子元素选择器只能选择某元素的子元素,其中E为父元素,而F为子元素,其中Egt;F所表示的是选择了E元素下的所有子元素F。这和后代选择器(E 

F)不一样,在后代选择器中F是E的后代元素,而子元素选择器E gt; F,其中F仅仅是E的子元素而以。

七、相邻兄弟元素选择器(E + F)

相邻兄弟选择器可以选择紧接在另一元素后的元素,而且他们具有一个相同的父元素,换句话说,EF两元素具有一个相同的父元素,而且F元素在E元素后面,而且相邻,这样我们就可以使用相邻兄弟元素选择器来选择F元素。

CSS3新增的哪些选择器和常见的属性是哪些?

一、新增的选择器

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;

支持:

   FF3+

三. 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 */

支持:

    all

九. 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

十九、 transition(a标签hover渐隐效果)

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中,追加了三个属性选择器分别为:

结构性伪类选择器由两部分构成,一是伪类选择器,一是伪元素选择器。

伪类选择器 ,要注意命名不要与系统定义好的选择器重名,例如link、hover

伪元素选择器 中包含 first-line、first-letter、before、after。

当root和body起冲突时,body就对内容区域生效,在内容区外则是root生效。

格式:not(selector)

1. first-child对一个父元素中的 第一个 子元素进行样式的指定

2. last-child对一个父元素中的 最后一个 子元素进行样式的指定

3. nth-child(positon)对一个父元素中的 指定序号 的子元素进行样式的指定

4. nth-last-child 对一个父元素中的 指定倒数序号 的子元素进行样式的指定

2)使用nth-of-type(odd)和nth-of-type(even)

1)使用nth-child

2)使用nth-child(an+b),a表示每次循环中,包括几种样式,b表示指定的样式在循环中所处的位置。

only-child选择器,在元素只有一个子元素时,可以代替使用 nth-child(1)/nth-last-child(1) 。

在css3选择器中,除了结构性伪类选择器外,还有一种UI元素状态选择器——只有当元素处于某种状态下才起作用,在默认状态下不起作用。

通过js改变输入框的可输入和不可输入状态,通过css样式改变输入框可输入和不可输入状态时的背景颜色。

用来位于同一个父元素之下的,给与一个子元素平级的另一个子元素设定样式

css3有哪些选择器?

css3选择器如下:

一、通配符选择器(*)

通配符选择器是用来选择所有元素,,也可以选择某个元素下的所有元素。

二、元素选择器(E)

元素选择器,是css选择器中最常见而且最基本的选择器。

三、类选择器(.className)

类选择器是以一独立于文档元素的方式来指定样式,使用类选择器之前需要在html元素上定义类名

四、id选择器(#ID)

ID选择器和上面说的类选择器是很相似的,在使用ID选择器之前也需要先在html文档中加注ID名称,这样在样式选择器中才能找到相对应的元素,不同的是ID选择器是一个页面中唯一的值,我们在类使用时是在相对应的类名前加上一个“.”号(.className)而id选择器是在名称前使用”#”如(#id),

五、后代选择器(E F)

后代选择器也被称作包含选择器,所起作用就是可以选择某元素的后代元素,比如说:E

F,前面E为祖先元素,F为后代元素,所表达的意思就是选择了E元素的所有后代F元素,请注意他们之间需要一个空格隔开。

六、子元素选择器(EF)

子元素选择器只能选择某元素的子元素,其中E为父元素,而F为子元素,其中EF所表示的是选择了E元素下的所有子元素F。这和后代选择器(E

F)不一样,在后代选择器中F是E的后代元素,而子元素选择器EF,其中F仅仅是E的子元素而以。

七、相邻兄弟元素选择器(E + F)

相邻兄弟选择器可以选择紧接在另一元素后的元素,而且他们具有一个相同的父元素,换句话说,EF两元素具有一个相同的父元素,而且F元素在E元素后面,而且相邻,这样我们就可以使用相邻兄弟元素选择器来选择F元素。

css3 新增选择器有哪些?

一、css3之前的选择器

ID选择器,#

类选择器,.

包含选择器(E F)

伪类选择器(:link,visited,hover,active,focus,first-child)

伪元素选择器(::first-line,first-letter,before,after)

通配选择器(.)

属性选择器(foo[name=’martin’])

子包含选择器(EF)

相邻兄弟选择器(E+F)

二、css3新增选择器

新增属性选择器:

E[foo^=’bar’] 匹配E元素,该元素包含foo属性,且foo属性值以bar开头

E[foo$=’bar’] 匹配E元素,该元素包含foo属性,且foo属性值以bar结尾

E[foo*=’bar’] 匹配E元素,该元素包含foo属性,且foo属性值包含bar字符串

新增结构伪类选择器:

E:root 匹配文档所在的根元素

E:nth-child(n) 匹配E所在父元素第n个匹配E的元素,非E的子元素也参与排序,若第n个子元素不是E元素,则该语句没有效果(注意这里的n从1开始)

E:nth-last-child(n) 匹配E所在父元素倒数第n个匹配E的元素

E:nth-of-type(n) 匹配E所在父元素第n个匹配E的元素,非E的子元素不参与排序(n同样是从1开始)注意区别nth-child(n)

E:last-child

E:first-of-type

E:last-of-type

E:only-child

E:only-of-type

E:empty

另外,使用前要考虑浏览器版本,新增css3选择器存在兼容性问题。平时多多练习,多动手。

CSS3中选择器有哪些语法

ss3选择器如下:

一、通配符选择器(*)

通配符选择器是用来选择所有元素,,也可以选择某个元素下的所有元素。

二、元素选择器(E)

元素选择器,是css选择器中最常见而且最基本的选择器。

三、类选择器(.className)

类选择器是以一独立于文档元素的方式来指定样式,使用类选择器之前需要在html元素上定义类名

四、id选择器(#ID)

ID选择器和上面说的类选择器是很相似的,在使用ID选择器之前也需要先在html文档中加注ID名称,这样在样式选择器中才能找到相对应的元素,不同的是ID选择器是一个页面中唯一的值,我们在类使用时是在相对应的类名前加上一个“.”号(.className)而id选择器是在名称前使用”#”如(#id),

五、后代选择器(E F)

后代选择器也被称作包含选择器,所起作用就是可以选择某元素的后代元素,比如说:E

F,前面E为祖先元素,F为后代元素,所表达的意思就是选择了E元素的所有后代F元素,请注意他们之间需要一个空格隔开。

六、子元素选择器(EF)

子元素选择器只能选择某元素的子元素,其中E为父元素,而F为子元素,其中EF所表示的是选择了E元素下的所有子元素F。这和后代选择器(E

F)不一样,在后代选择器中F是E的后代元素,而子元素选择器EF,其中F仅仅是E的子元素而以。

七、相邻兄弟元素选择器(E + F)

相邻兄弟选择器可以选择紧接在另一元素后的元素,而且他们具有一个相同的父元素,换句话说,EF两元素具有一个相同的父元素,而且F元素在E元素后面,而且相邻,这样我们就可以使用相邻兄弟元素选择器来选择F元素。

关于css3选择器和css3选择器语法结构的相关介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

© 版权声明

相关文章