首页 > 网站 > WEB开发 > 正文

CSS选择器

2024-04-27 14:27:07
字体:
来源:转载
供稿:网友
CSS选择器

传统HTML网页设计往往是内容和表现混合,随着网站规模不断扩大,无论是修改网页还是维护网站都显得越来越困难。CSS的诞生为网页注入了新鲜血液,它提供了丰富的样式手段,对页面布局等的控制也更加精确,同时能够实现内容和表现的分离,使得网站的设计风格趋向统一、维护更加容易,并且能够被多种浏览器支持。

一、CSS的基本语法

CSS是一个包含一个或多个规则的文本文件。CSS规则由两个主要的部分构成:选择器(Selector,也称“选择符”)和声明(Declaration)。

选择器通常是需要改变样式的HTML元素。

声明由一个或多个属性名称与属性值对组成。属性名称是CSS的关键字,如font-family(字体)、color(颜色)和border(边框)等。属性名称用于指定选择器某一方面的特征,而属性值则基本用于指定选择器的特性的具体特征。其基本语法如下:

selector{PRoperty1:valuue1;property2:valuue2;property3:valuue3;……}

选择器{属性1:属性值1;属性2:属性值2;属性3:属性值3;……}

二、CSS选择器类型

CSS选择器主要有4种类型:标记选择器、类选择器、id选择器及伪类选择器。

1、标记选择器

标记选择器(也可称为”元素选择器)即直接使用HTML标记名作为选择器,它定义的样式作用于页面中所有与选择器同名的标记。例如:

P{background-color:red;font-size:20px;color:green}

p是段落元素,该CSS规则将HTML中所有段落统一设置成”背景色为红色、字体大小为20像素以及字体颜色为绿色“。

2、类选择器

任何合法的HTML标记都可以使用class属性,class属性用于定义页面上的HTML元素标记组,这些标记组通常具有相同的功能或作用,因此它们可以设置相同的样式规则。类选择器由点号”.“及类名直接相连构成。例如:

.c2{background-color:red;font-size:20px;color:green}

<p class="c2">使用class属性设置段落样式</p>

p是段落元素选择器,在P中应用了class=”c2“这个选择器后,该段落中的文字会被设置成”背景色为红色、字体大小为20像素以及字体颜色为绿色“。

3、id选择器

HTML标记的id属性与class属性类似,可以用于各类标记中,也可以作为css选择器来使用。区别在于,同一id属性值在同一页面上只能出现一次,而同一class属性值可以在同一页面中多次出现。id选择器由井号”#“和id属性值相连构成。例如:

# right{color:background-color:red;font-size:20px;color:green}

<p id="right">使用class属性设置段落样式</p>

p是段落元素选择器,在P中应用了id=”right“这个选择器后,该段落中的文字会被设置成”背景色为红色、字体大小为20像素以及字体颜色为绿色“。

对于类选择器和id选择器的选择问题,要注意以下几点:

1)、是否在一个文档内重复使用

  • 类选择器可以在一个文档内根据需要多次使用
  • id选择器只能在文档内应用一次。

所以,如果需要多次使用相同的特定选择器,类选择器是最好的选择。

2)、是否可以使用组合类选择器

对于同一个HTML元素,可以使用多个类选择器格式化,而如果使用id选择器,只能用一个。这意味着类选择器有更广泛的应用。例如:

<p class="c1 c2">

.c1{color: red;} .c2{background-color:bule;}

3)、id选择器比类选择器更具体

有时候会发生一个声明与其它声明冲突的情况。这些冲突可以使用样式表的重叠解决。如果类选择器和id选择器的声明有冲突,最后将选择id选择器的声明。

4、伪类选择器

前面介绍的选择器都是能够与HTML中具体标记对应的,但是像段落的第一行、超链接访问前后等,就没有HTML标记与之对应,从而也没有简单的CSS选择器应用,为此CSS引进了伪类选择器。其用法如下:

标记:伪类名{}

常用伪类如下:

link:设置a标记在未被访问前的样式

hover:设置a标记在鼠标悬停时的样式

active:设置a标记在被用户激活(鼠标单击与释放之间)时的样式

visited:设置a标记在被访问后的样式

first-letter:作用于块,设置第一个字符的样式

first-line:作用于块,设置第一个行的样式

first-child:设置第一个子标记的样式

例如:

a:link{color:gray;text-decration:none;} 链接在访问前灰色,无下划线

a:visited{color:blue;text-decration:none;} 链接访问后蓝色,无下划线

a:hover{color:red;text-decration:underline} 鼠标悬停时,红色,有下划线

a:active{color:yellow;text-decration:underline} 链接激活后,黄色,有下划线

p:first-letter{font-weight:bold;font-family:"黑体"} 段落的第一个字黑体加粗

p:first-line{font-size:32px} 段落的第一行字号32px

注:对链接编写样式规则时,必须按照上面的顺序,即link、visited、hover、active

5、其它选择器

交集选择器:

p.c2{color:red;font-size:20px;}

li.c3{color:red;}

前者选择所有class=“c2”的<p>元素,后者选择所有 class=“c3”的<li>元素

并集选择器:

.c1,.c2,c3{color:red}

选择器c1、c2和c3中的声明均包含颜色属性红色

后代选择器:

后代选择器用于选择一个元素的后代元素,例如: p em{color:blue;} 该样式规则只选择<p>元素后代的<em>元素

通配符选择器:

通配符选择器用于选择所有元素。例如: *{color:bule} 会将页面上所有的HTML元素格式化为蓝色。


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表