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

如: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. Codeforces Round #445 A. ACM ICPC【暴力】

    A. ACM ICPC time limit per test 2 seconds memory limit per test 256 megabytes input standard input o ...

  2. ARC 098 D - Xor Sum 2

    Problem Statement There is an integer sequence A of length N. Find the number of the pairs of intege ...

  3. POJ 2549:Subsets(哈希表)

    [题目链接] http://poj.org/problem?id=2549 [题目大意] 给出一个数集,从中选择四个元素,使得a+b+c=d,最小化d [题解] 我们对a+b建立Hash_table, ...

  4. [Contest20180418]数学竞赛

    题意:初始时$x=0$(长度),当$x$为长度时,你可以把$x$变成$\sin^{-1}x,\cos^{-1}x,\tan^{-1}x$之一($x$变为角度),若$x$为角度,你可以把$x$变成$\s ...

  5. shell 调用 sqlplus

    一.最简单的shell里调用sqlplus. $ vi test1.sh #!/bin/bashsqlplus -S /nolog > result.log <<EOFset hea ...

  6. 【ASP.NET】 中 system.math 函数使用

    1 /* 字段 */ 2 Math.E; //2.71828182845905 3 Math.PI; //3.14159265358979 4 5 /* 静态方法 */ 6 Math.Abs; //绝 ...

  7. 消除SDK更新时的“https://dl-ssl.google.com refused”错误

    消除SDK更新时,有可能会出现这样的错误: Download interrupted: hostname in certificate didn't match: <dl-ssl.google. ...

  8. LNMP第一部分环境搭建

    1. MySQL安装(同LAMP里面的安装方法)2.  php安装wget  http://cn2.php.net/distributions/php-5.4.37.tar.bz2tar jxf ph ...

  9. NFS 服务配置篇

    安装.配置NFS服务 1.NFS简介 NFS(network file system) NFS是一个主机A通过网络,允许其他主机B可以来共享主机A的一个目录文件的一个文件系统 2.需要安装两个包nfs ...

  10. 在c++代码中执行bat文件 【转】

    我想在c++代码中执行磁盘上的一个bat文件. 这个bat文件的完整路径是:E:\\7z\\my7z.bat. 方法一: system("E:\\7z\\my7z.bat"); s ...