CSS语法的派生选择器

html-css017

CSS语法的派生选择器,第1张

通过依据元素在其位置的上下文关系来定义样式,你可以使标记更加简洁。

在 CSS1 中,通过这种方式来应用规则的选择器被称为上下文选择器 (contextual selectors),这是由于它们依赖于上下文关系来应用或者避免某项规则。在 CSS2 中,它们称为派生选择器,但是无论你如何称呼它们,它们的作用都是相同的。

派生选择器允许你根据文档的上下文关系来确定某个标签的样式。通过合理地使用派生选择器,我们可以使 HTML 代码变得更加整洁。

比方说,你希望列表中的 strong 元素变为斜体字,而不是通常的粗体字,可以这样定义一个派生选择器:

li strong { font-style: italicfont-weight: normal}请注意标记为 <strong>的蓝色代码的上下文关系:

<p><strong>我是粗体字,不是斜体字,因为我不在列表当中,所以这个规则对我不起作用</strong></p><ol><li><strong>我是斜体字。这是因为 strong 元素位于 li 元素内。</strong></li><li>我是正常的字体。</li></ol>在上面的例子中,只有 li 元素中的 strong 元素的样式为斜体字,无需为 strong 元素定义特别的 class 或 id,代码更加简洁。

再看看下面的 CSS 规则:

strong { color: red}h2 { color: red}h2 strong { color: blue}下面是它施加影响的 HTML:

<p>The strongly emphasized word in this paragraph is<strong>red</strong>.</p><h2>This subhead is also red.</h2><h2>The strongly emphasized word in this subhead is<strong>blue</strong>.</h2>

派生选择器:通过依据元素在其位置的上下文关系来定义样式,你可以使标记更加简洁。

派生选择器允许你根据文档的上下文关系来确定某个标签的样式。通过合理地使用派生选择器,我们可以使 HTML 代码变得更加整洁。

比方说,你希望列表中的 strong 元素变为斜体字,而不是通常的粗体字,可以这样定义一个派生选择器:

li strong {

font-style: italic

font-weight: normal

}

请注意标记为 <strong>的代码上下文关系:

<p><strong>我是粗体字,不是斜体字,因为我不在列表当中,所以这个规则对我不起作用</strong></p>

<ol>

<li><strong>我是斜体字。这是因为 strong 元素位于 li 元素内。</strong></li>

<li>我是正常的字体。</li>

</ol>

id 选择器可以为标有特定 id 的 HTML 元素指定特定的样式。

id 选择器以 "#" 来定义。

下面的两个 id 选择器,第一个可以定义元素的颜色为红色,第二个定义元素的颜色为绿色:

#red {color:red}

#green {color:green}

下面的 HTML 代码中,id 属性为 red 的 p 元素显示为红色,而 id 属性为 green 的 p 元素显示为绿色。

<p id="red">这个段落是红色。</p>

<p id="green">这个段落是绿色。</p>

注意:id 属性只能在每个 HTML 文档中出现一次。

在 CSS 中,类选择器以一个点号显示:

 

 .center {text-align: center}

在上面的例子中,所有拥有 center 类的 HTML 元素均为居中。

在下面的 HTML 代码中,h1 和 p 元素都有 center 类。这意味着两者都将遵守 ".center" 选择器中的规则。

<h1 class="center">

This heading will be center-aligned

</h1>

<p class="center">

This paragraph will also be center-aligned.

</p>

注意:类名的第一个字符不能使用数字!它无法在 Mozilla 或 Firefox 中起作用。

1、基本样式 的写法

<style type="text/css">

h1{

font-family:黑体

}

</style>

直接些标签名进行定义属性,这个也比较常见。但是它的定义通常放在<style>标签中声明。

2、类class链接样式

定义也通常在<style>标签中声明

<style type="text/css">

.style1{

color:red

font-size:16px

}

</style>

引用时候直接在标签的属性中使用class="style1" 记住是class属性

<h1></h1>

3、id链接样式

<style type="text/css">

#style1{

color:blue

font-size:16px

}

</style>

引用的时候就用标签属性中的id属性 ,要区别于类属性

<h1 id="style1"></h1>

区别:类class链接样式和id链接样式

类连接样式可以适用于多个对象设置同样的属性中,

而id链接样式只能用于一个对象标签中,其他标签则会失效

4、html选择器:

直接用标签进行声明,跟上面的第一个一样

2)派生选择器:

<style type="text/css">

h1 h2{

color:red

font-size:1em

font-family:黑体

}

</style>

h1 h2的写法意思是代表着该css样式只能之<h1><h2> </h2></h1>同时出现,且是嵌套使用的时候才能生效

3)id选择器

id选择器的作用是通过id选择器将css样式作用到页面的对象上。写法:

<style type="text/css">

#text p{

font-size:1em

}

</style>

将该样式绑定到html上,就要这样写

<h1 id=#"text">这个是不要p的写法

要p的写法

表明该对象只能作用在text对象上的所有p标签中

4)class选择器

<style type="text/css">

.fancy{

color:red

background:#666

}

</style>

使用的时候也是

<h1></h1>

也可以像上面的一样用派生选择器

<style type="text/css">

.fancy td{

color:red

background:#666

}

</style>

说明生效只能在td中

5)分组选择器

h1{color:bule}

#text{color:bule}

.play{color:bule}

这种写法太繁琐了

我们可以使用

h1,#text,.paly{

color:bule}

这样来定义

6)伪类和伪类选择器

用关键字:lang来定义

<html>

<head>

<style type="text/css">

q:lang(smile){

quotes:"∞"

}

</style>

</head>

<body>

好吧,展示一下

<p>请看<q>祝你愉快</q></p>

</body>

</html>