css 选择器 介绍

所属分类: 网页制作 / CSS 阅读数: 1169
收藏 0 赞 0 分享

“选择器”是什么?
每一条css样式定义由两部分组成,形式如下:

复制代码
代码如下:

选择器{样式}

在{}之前的部分就是“选择器”。
“选择器”指明了{}中的“样式”的作用对象,也就是“样式”作用于网页中的哪些元素。
由此可见,“选择器”的功能是从“网页所有的元素”当中选择“部分元素”,因此我们把它称为“选择器”。
“选择器”的种类
前面讲了,“选择器”的功能是指明“样式”作用的“目标元素”。
那如何才能指明这些“目标元素”呢。
我们知道,一个“元素”有“标签名”,“class”,“id”这几个常见属性,那么就可以从这几个属性出发来确定“目标元素”.由此也就诞生了几个最常用的“选择器”--标签选择器,类选择器,id选择器
常用的“选择器”
标签选择器
使用“元素”的“标签名”作为“选择器”
书写形式:

复制代码
代码如下:

标签名{}

例如:p{},表示{}中的“样式”的将会作用于“标签名”为"p"的元素
类选择器
依据“元素”的“class”属性来编写“选择器”
书写形式:

复制代码
代码如下:

.class值{}

解释:点号.后面跟着某些元素的“class”值
例如:.高亮显示{},表示{}中的“样式”的将会作用于“class”取值为"高亮显示"的元素
举例:

复制代码
代码如下:

<style>
.高亮显示{color:red;}
</style>
<a class="高亮显示">a1</a>
<a>a2</a>
<p>p1</p>
<p class="高亮显示">p2</p>

解释:“样式”会作用于第一个"a"元素和第二个"p"元素.因为它们的“class”属性值都是"高亮显示"
id选择器
依据“元素”的“id”属性来编写“选择器”
书写形式:
#id值{}
解释:井号#后面跟着某个元素的“id”值
例如:#文章标题{},表示{}中的“样式”的将会作用于“id”取值为"文章标题"的元素
举例:

复制代码
代码如下:

<style>
#文章标题{color:red;}
</style>
<p>p1</p>
<p id="文章标题">p2</p>
<p>p3</p>

解释:“样式”会作用于第二个"p"元素.因为它的“id”属性值是"文章标题"
“标签选择器”和“类选择器”可以结合使用,形式如下:
标签名.class值{}
例如:p.高亮显示{},表示{}中的“样式”的将会作用于“标签名”为"p"并且“class”属性值为"高亮显示"的元素
举例:

复制代码
代码如下:

<style>
p.高亮显示{color:red;}
</style>
<a class="高亮显示">a1</a>
<a>a2</a>
<p>p1</p>
<p class="高亮显示">p2</p>

解释:“样式”只会作用于第二个"p"元素.因为它的“标签名”为"p"并且“class”属性值为"高亮显示"
组合选择器
前面列出的“标签选择器”,“类选择器”,“id选择器”在书写时,只涉及到一个元素,也就是“目标元素”,这几个“选择器”可以被称为"基本选择器".
而“组合选择器”在书写时,涉及到多个"基本选择器"
并列选择器
书写形式:
a,b{}
a和b都是"基本选择器",两者用逗号,分开,表明两者是并列关系,它们使用同一个样式
例如:a,.高亮显示{},表示{}中的“样式”的将会作用于“标签名”为"a"或者“class”属性值为"高亮显示"的元素
举例:

复制代码
代码如下:

<style>
a,.高亮显示{color:red;}
</style>
<a>a1</a>
<a>a2</a>
<p>p1</p>
<p class="高亮显示">p2</p>

后代选择器
书写形式:
a b{}
a和b之间用至少一个空格分开,a选择器代表“目标元素”的“祖先元素”,b选择器指的是“目标元素”本身.
对于这种选择器,可以粗略的理解为:{}中的“样式”的将会作用于a元素中的b元素
例如:p .高亮显示{},表示{}中的“样式”的将会作用于“祖先元素”为"p元素",而自身的“class”属性值为"高亮显示"的元素.也可以说,{}中的“样式”的将会作用于“class”属性值为"高亮显示",并且祖先元素为"p元素"的那些元素
举例:

复制代码
代码如下:

<style>
p .高亮显示{color:red;}
</style>
<p>
<a class="高亮显示">a1</a>
<a>a2</a>
<span>
<a class="高亮显示">a3</a>
</span>
</p>
<div>
<a class="高亮显示">a1</a>
<a>a2</a>
</div>

解释:“样式”会作用于"p"元素中的第一个"a"元素,也会作用于"span"元素中的"a"元素.因为这两个元素的“祖先元素”为"p元素",并且它们自身的“class”属性值是"高亮显示"

更多精彩内容其他人还在看

Opera中国的WEB标准课程

网页制作Webjx文章简介:在这篇文章里,我要向大家介绍我和其他很多人花费数月时间开发的一个课程——Web标准课程,该课程旨在向大家提供Web设计和开发的坚实基础,无论读者是谁,此教程完全免费、可访问,并且不需要预备知识。当然,我主要还
收藏 0 赞 0 分享

CSS样式表渐进增强的基本概念

网页制作Webjx文章简介:如果你挠着头想弄清楚优雅降级和渐进增强的区别,我告诉你,这是视角问题。优雅降级和渐进增强都考虑网站在各种设备的各种浏览器上如何良好运转。两者区别的关键在于它们各自关注的焦点,以及这种关注对工作流程的影响
收藏 0 赞 0 分享

简单介绍Web Developer插件制作网页

网页制作Webjx文章简介:Firefox浏览器是一个良好支持W3C标准的开放源代码的浏览器,拥有Linux/Windows/Mac版本。因为Firefox浏览器良好支持W3C标准,所以使用Firefox来调试网页是非常好的。 Firefox浏览器是
收藏 0 赞 0 分享

CSS布局带来的巨大影响:CSS display属性值

网页制作Webjx文章简介:网页元素应用上那些与表格相关的display属性值后,能够模仿出与表格相同的特性。我将会在该文中给大家演示这种方法给CSS布局带来的巨大影响。 应原书编辑要求,先在文章顶部给出链接:《Everything You
收藏 0 赞 0 分享

用div css模拟表格对角线

这只是探讨一种CSS模拟表格对角线的用法,实际在工作中可能觉得这样做有点小题大作,这不是本主题讨论的重点。如果对此深以为然的朋友,请一笑过之 首先声明: 这只是探讨一种CSS模拟表格对角线的
收藏 0 赞 0 分享

IE Firefox在css中的差别 (部分)

1、单位问题 问题:任何距离的数值ie可以不加单位,ff必须要求写单位(0除外) 解决:写全单位如padding:0px; 2、水平居中 问题:div里的内容,ie默认为center,而ff默认left 解决:mairgin:0px auto; 3、高度问题
收藏 0 赞 0 分享

不用js可以实现信息提示效果

[code] <style> body { font:verdena; font-size:14px; color:#000 } h1{ font:verdena; font-size:22px; color:#000 } h2{ font:verdena;
收藏 0 赞 0 分享

CSS解决未知高度的垂直水平居中自适应问题

今天有人问起,晚上试着写出来,供参考; 以下代码兼容主流浏览器IE6、IE7、Firefox、Opera。 从最简单的开始………… 一、如何让一个DIV水平居中? 这个简单不作过多说明! [code] <st
收藏 0 赞 0 分享

CSS cursor 属性 -- 鼠标指针样式效果

取值: [ [<uri> ,]* [ auto | crosshair | default | pointer | move | e-resize | ne-resize | nw-resize | n-resize | se-resize | sw-resize |
收藏 0 赞 0 分享

css 简单区别ie6,ie7,firefox的写法

同一样式里可以这样 [code] margin:17px; FF +margin:17px; IE6 IE7 _margin:17px; IE6 [/code] 按这个顺序,刚好区分开三个浏览器
收藏 0 赞 0 分享
查看更多