前面说过样式规则。也知道了样式规则语法形式为:选择器+声明块

如:div{ color:black;padding:10px; }   div即表示选择器(此处是元素选择器),花括号里的内容就是声明块。

选择器用于指定样式规则可作用于HTML文档中的哪个或者哪些元素。

常见的选择器类型有下面几种:

1、元素选择器(类型选择器):匹配选择器的网页上的不论什么HTML元素,不考虑这些元素在文档树中的位置。

如:p{ background:aqua; color:pink; }   匹配网页上的不论什么p元素,不考虑p元素在文档树中的位置

2、类选择器:被用于选择有某个class属性的不论什么HTML元素,语法形式:.类名{属性:值;}

<head>
<style type="text/css">
.hello{
width:100px;
height: 100px;
background: #eee;
color: blue;
font-weight: bold;
}
</style>
</head>
<body>
<span style="white-space:pre"> </span><div class="hello">类选择器</div>
</body>

同一class属性值能够再同一页面出现多次

3、ID选择器:被用于选择有某个ID属性的不论什么HTML元素,语法形式: #id名{ 属性:值;}

<head>
<style type="text/css">
#hello{
width:100px;
height: 100px;
background: #eee;
color: blue;
font-weight: bold;
}
</style>
</head>
<body>
<span style="white-space:pre"> </span><div id="hello">ID选择器</div>
</body>

同一ID属性值在同一页面上仅仅能出现一次

4、通配符选择器:用于选择全部元素,语法:*{ 属性:值}

5、包括选择器:用于选择文档的一个元素的后代元素

第一种方法:

<head>
<style type="text/css">
p span{
font-weight: bold;
color:red;
}
</style>
</head>
<body>
<p>how <span> are</span> you?</p>
</body>

另外一种方法

<head>
<style type="text/css">
p>.sp{
font-weight: bold;
color:red;
}
</style>
</head>
<body>
<span style="white-space:pre"> </span><p>how <span class="sp"> are</span> you?</p>
</body>

6、伪类选择器:以不同方式格式化超链接<a>元素的四种不同状态

a:link{} 用在未訪问的链接的选择器

a:visited{} 用在已訪问的链接的选择器

a:hover{} 用在鼠标光标放在其上的链接的选择器。当中hover还能够用在别的元素中用于制作在鼠标光标放在目标上的样式的编辑

a:active{} 用在获得焦点(比方:被点击)的链接上的选择器

<head>
<style type="text/css">
.a:link{color: #000;}
.a:visited{color: #ff0;}
.a:hover{color:red;}
.a:active{color:black;}
</style>
</head>
<body>
<a href="#" class="a">点点点</a>
</body>

7、伪元素选择器:

(1) :first-line  用于一个元素的第一行的选择器

如段落的第一行

<head>
<style type="text/css">
p:first-line{
color:red;
}
</style>
</head>
<body>
<p>hello<br/>world</p>
</body>

仅仅有hello是红色的

(2) :first-letter  用于一个元素的第一个字符的选择器

如段落的第一个字符

<head>
<style type="text/css">
p:first-letter{
color:red;
}
</style>
</head>
<body>
<p>蓦然回首</p>
</body>

仅仅有字是红色的。

(3) :first-child  用于<body>中第一个是( :first-child)前面的元素的全部内容的选择器

<head>
<style type="text/css">
p:first-child{
color:red;
}
</style>
</head>
<body>
<p>蓦然回首</p>
<p>然后呢?</p>
</body>

蓦然回首是红色的

<head>
<style type="text/css">
p:first-child{
color:red;
}
</style>
</head>
<body>
<div>歌声里</div>
<p>蓦然回首</p>
<p>然后呢?</p>
</body>

没有字体内容的颜色是红色的。由于<body>中第一个元素是div,而不是p



选择器的优先级
:ID选择器 > 类选择器 > 伪类选择器 > 元素/伪元素选择器 > 通配符选择器

CSS基础2——选择器的更多相关文章

  1. HTML&CSS基础-属性选择器

    HTML&CSS基础-属性选择器 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.html源代码 <!DOCTYPE html> <html> & ...

  2. HTML&CSS基础-常用选择器

    HTML&CSS基础-常用选择器 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.html源代码 <!DOCTYPE html> <html> & ...

  3. CSS基础和选择器

    什么是CSS? CSS是指层叠样式表(Cascading Style Sheets),样式定义如何显示HTML元素,样式通常又会存在于样式表中.也就是说把HTML元素的样式都统一收集起来写在一个地方或 ...

  4. 李洪强和你一起学习前端之(3)Css基础和选择器

    大家好! 经过了前面的学习,是不是对前端的学习有了初步的了解.虽然我之前有iOS开发的经验,现在接触一门新的语言,对我来说 有一定的优势,但是一门技术对于谁来说都是公平的,我承认,我在接触新知识的时候 ...

  5. CSS基础--属性选择器、伪类选择器

    属性选择器 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...

  6. CSS基础及选择器

    CSS层叠样式表与表相分离.常用CSS2和CSS3. HTML引入CSS 1.行内样式 <div style="color:red"></div> 2.内部 ...

  7. Css基础-id选择器

    id 选择器以#来定义 <p id="pid">Hello css</p> #pid { color:red; } <div id="div ...

  8. CSS 基础 优先级 选择器 继承

    1.样式优先级 (内联样式)Inline style     >    (内部样式)Internal style sheet     >     (外部样式)External style ...

  9. CSS基础之选择器

    一:CSS介绍 CSS(Cascading Style Sheet,层叠样式表)定义如何显示HTML元素. 当浏览器读到,一个样式表时,就会按照. 二:CSS语法 每个CSS有两部分组成:选择器和声明 ...

随机推荐

  1. Js 利用正则表达式和replace函数获取string中所有被匹配到的文本

    js的replace函数除了替换文本以外还有获取所有被正则表达式匹配到的文本的功能.这里以一个简单的案例来作为演示. 利用正则查找出所有被两个花括号包裹的字符串: var str = '<div ...

  2. Python的支持工具[0] -> 环境包管理工具[0] -> pip

    pip包管理工具 / pip Package Management Tools pip是一个Python包管理工具,主要是用于安装PyPI上的软件包,可以替代easy_install工具. 1 pip ...

  3. 内存或磁盘空间不足,Microsoft Office Excel 无法再次打开或保存任何文档。 [问题点数:20分,结帖人wenyang2004]

    在环境里是没有问题的 就是发布网站后,会出现“/”应用程序中的服务器错误.--------------------------------------------------------------- ...

  4. flex skin

    原文地址:http://blog.163.com/to_yht/blog/static/1227257742009741359326/当程序做完后,你是否还在为老套的flex组件默认效果发愁?是否还在 ...

  5. ServicePointManager.ServerCertificateValidationCallback 冲突的解决

    ServicePointManager是用于创建. 维护和删除的实例的静态类ServicePoint类. 当应用程序请求对 Internet 资源统一资源标识符 (URI) 的连接通过ServiceP ...

  6. telnet 查看端口是否可访问

      1. 首先为什么要写这篇文章 说到为什么还得从DNS服务器说起.我在我的电脑上安装了DNS服务器,但是用网络去访问还怎么都访问都不上去.于是我就打开dos窗口,用ping命令查看是否可以ping( ...

  7. ylb:事务处理

    ylbtech_sqlserver --1.定义三个变量分别保存你的姓名,年龄和身高,然后赋值并且输出 --DECLARE @name varchar(10) , @age int , @height ...

  8. 2017.9.15 postgresql批量插入造成冲突后执行更新

    参考来自:https://stackoverflow.com/questions/40647600/postgresql-multi-value-upserts/46233907#46233907 1 ...

  9. [Angular] ViewChild 'read' option

    It is not clear in the Docs about {read: xx} option for @ViewChild. Based on the Source code, @ViewC ...

  10. jQuery中$().each与$.each的区别

    在jQuery中 $().each与$.each是不同的,$().each用于对jQuery对象做遍历操作处理,而$.each用于循环遍历一个Array或Object对象,相当于for或while循环 ...