详述CSS选择器

什么是选择器

我们在设计网页时常常需要设计某一标签的属性,为了让代码看着整洁有序,就需要将其属性写在<head>标签内的<style>标签中,此时就需要选择器来判断编写的属性代码到底是应用在哪一个标签上。总的来讲:浏览器通过选择器为满足条件的HTML元素添加CSS样式。

选择器有哪些

1、标签选择器

浏览器为HTML文档内标签名标签选择器名相同的标签元素添加CSS样式,语法格式如下:

标签选择器名 {
    declaration1;
    declaration2;
    …
}

实例:

<!DOCTYPE html>
<html>
    <head>
	<meta charset="UTF-8">
	<title></title>
	<style>
	    span{/*这是一个标签选择器*/
		color: blue;
	    }
	</style>
    </head>
    <body>
	<span>这是一个span标签</span>
    </body>
</html>

2、id选择器

浏览器为id标签属性的属性值与id选择器名相同的标签元素添加CSS样式,其语法如下:

# id选择器名 {/*注意一定要用#号*/
    declaration1;
    declaration2;
    …
}

实例:

<!DOCTYPE html>
<html>
    <head>
	<meta charset="UTF-8">
	<title></title>
	<style>
	    #first{/*这是一个id选择器*/
		color: blue;
	    }
	</style>
    </head>
    <body>
	<span id="first">这是一个span标签</span>
    </body>
</html>

3、类选择器

浏览器class标签属性的属性值类选择器名相同的标签元素添加CSS样式,其语法如下:

. 类选择器名 {/*一定要用.来引用类名*/
    declaration1;
    declaration2;
    …
}

注意:

  1. class标签属性的属性值不能以数字开头
  2. class标签属性的属性值可以有多个,每个值之间用空格间隔

实例:

<!DOCTYPE html>
<html>
    <head>
	<meta charset="UTF-8">
	<title></title>
	<style>
	    .first{/*这是一个类选择器*/
		color: blue;
	    }
	</style>
    </head>
    <body>
	<span class="first">这是一个span标签</span>
        <p class="first">这是一个p标签</p>
    </body>
</html>

4、分组选择器

如果HTML文档多个CSS样式表内的部分样式相同,则可以通过定义一个分组选择器以简化CSS样式代码, 该选择器的选择器名由多个选择器组成,使用逗号分隔,其语法如下:

选择器1,选择器2,选择器3…{
    declaration1;
    declaration2;
    …
}

实例:

<!DOCTYPE html>
<html>
    <head>
	<meta charset="UTF-8">
	<title></title>
	<style>
	    .first,#second{
		color: blue;
	    }
	</style>
    </head>
    <body>
	<span class="first">这是一个span标签</span>
        <p id="second">这是一个p标签</p>
    </body>
</html>

5、后代选择器

 后代选择器(descendant selector)又称为包含选择器,选择器之间用空格隔开,用于为特定的HTML子元素添加CSS样式,语法如下:

父代选择器1 子父代选择器2 子父代选择器3 ….子代选择器 {
    declaration1;
    declaration2;
    …
}

实例:

<!DOCTYPE html>
<html>
    <head>
	<meta charset="UTF-8" />
	<title>后代选择器</title>
	<style type="text/css">
	    /*只为ol标签元素内class="font_color"的子元素添加CSS样式*/
	    ol .font_color {
	        color: red;
	    }
	</style>
    </head>
    <body>
	<ol>
	    <li>第一项</li>
	    <li class="font_color">第二项</li>
	</ol>
	<ul>
	    <li>第一项</li>
	    <li class="font_color">第二项</li>
	</ul>
    </body>
</html>

6、通配符选择器

通配符选择器匹配HTML文档中的任何HTML元素,其语法如下:

*{
    declaration1;
    declaration2;
    …
}

通配符选择器常常被用来消除默认空格和换行:

<!DOCTYPE html>
<html>
    <head>
	<meta charset="UTF-8">
	<title>通配符选择器</title>
	<style>
	    /*取消标签默认margin与padding值*/
	    *{
		margin:0px;
		padding:0px;
	    }
	</style>
    </head>
    <body>
	<p style="border:1px solid red;">海上生明月,天涯共此时。</p>
    </body>
</html>

选择器的优先级问题

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值