`

五.CSS选择器

 
阅读更多

1.CSS 元素选择器  name
h1 {color:blue;}
在 W3C 标准中,元素选择器又称为类型选择器(type selector)。
“类型选择器匹配文档语言元素类型的名称。类型选择器匹配文档树中该元素类型的每一个实例。”

2.选择权分组 ( , ; )
(1)选择器分组  (,)
h2, p {color:gray;}
(2)通配符选择器(*)
* {color:red;}
这个声明等价于列出了文档中所有元素的一个分组选择器。
利用通配选择器,只需敲一次键(仅一个星号)就能使文档中所有元素的 color 属性值指定为 red。
(3)声明分组(;)
h1 {font: 28px Verdana; color: white; background: black;}
对声明分组,一定要在各个声明的最后使用分号,浏览器会忽略样式表中的空白符。
提示:在规则的最后一个声明后也加上分号是一个好习惯。在向规则增加另一个声明时,就不必担心忘记再插入一个分号。

3.类选择器(.)
(1)类选择器允许以一种独立于文档元素的方式来指定样式。
该选择器可以单独使用,也可以与其他元素结合使用。
为了将类选择器的样式与元素关联,必须将 class 指定为一个适当的值
<h1 class="important">
This heading is very important.
</h1>
.important {color:red;}
(2)结合元素选择器
p.important {color:red;}
(3)CSS 多类选择器
通过把两个类选择器链接在一起,仅可以选择"同时"包含这些类名的元素
.important.warning {background:silver;}
class里需要同时存在两个类名(顺序随意)
<p class="important urgent warning">This paragraph is a very important warning.</p>

4.ID选择权(#)
在某些方面,ID 选择器类似于类选择器,不过也有一些重要差别。
(1)语法:
首先,ID 选择器前面有一个 # 号 - 也称为棋盘号或井号。
引用 id 属性中的值
#intro {font-weight:bold;}
<p id="intro">This is a paragraph of introduction.</p>
(2)类选择器还是 ID 选择器?
区别 1:只能在文档中使用一次
与类不同,在一个 HTML 文档中,ID 选择器会使用一次,而且仅一次。
区别 2:不能使用 ID 词列表
不同于类选择器,ID 选择器不能结合使用,因为 ID 属性不允许有以空格分隔的词列表。
区别 3:ID 能包含更多含义
(3)区分大小写

5.属性选择器( [] )
(1)简单属性选择
*[title] {color:red;}
a[href] {color:red;}
同时含有多个属性
a[href][title] {color:red;}
(2)根据具体属性值选择
全匹配 a[href="http://www.w3school.com.cn/about_us.asp"] {color: red;}
请注意,这种格式要求必须与属性值完全匹配。
(3)根据部分属性值选择
如果需要根据属性值中的词列表的某个词进行选择,则需要使用波浪号(~)
假设您想选择 class 属性中包含 important 的元素,可以用下面这个选择器做到这一点
p[class~="important"] {color: red;}
(4)子串匹配属性选择器
类型                                  描述
[abc^="def"]    选择 abc 属性值以 "def" 开头的所有元素
[abc$="def"]    选择 abc 属性值以 "def" 结尾的所有元素
[abc*="def"]    选择 abc 属性值中包含子串 "def" 的所有元素
(5)特定属性选择类型
*[lang|="en"] {color: red;}
上面这个规则会选择 lang 属性等于 en 或以 en- 开头的所有元素。
<p lang="en">Hello!</p>
<p lang="en-us">Greetings!</p>
<p lang="en-au">G'day!</p>

6.后代选择器 (空格)
(1)根据上下文选择元素
h1 em {color:red;}
<h1>This is a <em>important</em> heading</h1>
(2)具体应用
有关后代选择器有一个易被忽视的方面,即两个元素之间的层次间隔可以是无限的。

7.子元素选择器 ( > )
只选择某个元素的子元素
h1 > strong {color:red;}
<h1>This is <strong>very</strong> important.</h1>

8.相邻兄弟选择器( + )
(1)相邻兄弟选择器(Adjacent sibling selector)可选择紧接在另一元素后的元素,且二者有相同父元素。
例如,如果要增加紧接在 h1 元素后出现的段落的上边距
h1 + p {margin-top:50px;}
选择紧接在 h1 元素后出现的段落,h1 和 p 元素拥有共同的父元素
(2)结合其他选择器
相邻兄弟结合符还可以结合其他结合符:
html > body table + ul {margin-top:20px;}
解释为:选择紧接在 table 元素后出现的所有兄弟 ul 元素,
该 table 元素包含在一个 body 元素中,body 元素本身是 html 元素的子元素。

9.CSS 伪类 (Pseudo-classes)
CSS 伪类用于向某些选择器添加特殊的效果。
属性                                  描述                                                                                        CSS
:active         向被激活的元素添加样式。                                        1
:focus          向拥有键盘输入焦点的元素添加样式。                2
:hover          当鼠标悬浮在元素上方时,向元素添加样式。 1
:link           向未被访问的链接添加样式。                                    1
:visited        向已被访问的链接添加样式。                                     1
:first-child    向元素的第一个子元素添加样式。                            2
:lang           向带有指定 lang 属性的元素添加样式。              2
(1)锚伪类
在支持 CSS 的浏览器中,链接的不同状态都可以不同的方式显示;
这些状态包括:活动状态,已被访问状态,未被访问状态,和鼠标悬停状态。
a:link {color: #FF0000}     未访问的链接
a:visited {color: #00FF00}  已访问的链接
a:hover {color: #FF00FF}    鼠标移动到链接上
a:active {color: #0000FF}   选定的链接
提示:在 CSS 定义中,a:hover 必须被置于 a:link 和 a:visited 之后,才是有效的。
提示:在 CSS 定义中,a:active 必须被置于 a:hover 之后,才是有效的。
提示:伪类名称对大小写不敏感。
(2)first-child 第一个子元素
第一个子元素指该元素下所有符合第一个子元素的元素(元素嵌套导致产生多个)
p:first-child {font-weight: bold;}
li:first-child {text-transform:uppercase;}
第一个规则将作为某元素第一个子元素的所有 p 元素设置为粗体,既是第一个子元素又是P元素;
第二个规则将作为某个元素(在 HTML 中,这肯定是 ol 或 ul 元素)第一个子元素的所有 li 元素变成大写。
提示:最常见的错误是认为 p:first-child 之类的选择器会选择 p 元素的第一个子元素。
注释:必须声明 <!DOCTYPE>,这样 :first-child 才能在 IE 中生效。
(3)lang 伪类
:lang 伪类使你有能力为不同的语言定义特殊的规则。
:lang 类为属性值为 no 的 q 元素定义引号的类型
q:lang(no) { quotes: "~" "~" }
<p>文字<q lang="no">段落中的引用的文字</q>文字</p>

10.伪元素 (Pseudo-elements)
伪元素的语法:
selector:pseudo-element {property:value;}
CSS 类也可以与伪元素配合使用:
selector.class:pseudo-element {property:value;}
伪元素
W3C:"W3C" 列指示出该属性在哪个 CSS 版本中定义(CSS1 还是 CSS2)。
属性                                      描述                                                                  CSS
:first-letter   向文本的第一个字母添加特殊样式。    1
:first-line     向文本的首行添加特殊样式。                   1
:before         在元素之前添加内容。                                   2
:after          在元素之后添加内容。                                   2
(1):first-line 伪元素用于向文本的首行设置特殊样式。
p:first-line { color:#ff0000; font-variant:small-caps; }
(2)"first-letter" 伪元素用于向文本的首字母设置特殊样式:
p:first-letter{color:#ff0000;font-size:xx-large;}
(3)伪元素和 CSS 类
p.article:first-letter {
    color: #FF0000;
}
所有 class 为 article 的段落的首字母变为红色
(4)多重伪元素 可以结合多个伪元素来使用
p:first-letter {
    color: #ff0000;
    font-size: xx-large;
}

p:first-line {
    color: #0000ff;
    font-variant: small-caps;
}
段落的第一个字母将显示为红色,其字体大小为 xx-large;
第一行中的其余文本将为蓝色,并以小型大写字母显示。段落中的其余文本将以默认字体大小和颜色来显示。
(5)CSS2 - :before 伪元素
":before" 伪元素可以在元素的内容前面插入新内容。
在每个 <h1> 元素前面插入一幅图片:
h1:before {
    content: url(logo.gif);
}
(6)CSS2 - :after 伪元素
":after" 伪元素可以在元素的内容之后插入新内容。
每个 <h1> 元素后面插入一幅图片
h1:after {
    content: url(logo.gif);
}

分享到:
评论

相关推荐

    reset.css & normalize.css 下载

    1. 通用选择器`*`用于清除所有元素的内外边距和边框: ```css * { margin: 0; padding: 0; border: 0; } ``` 2. 清除列表项的缩进: ```css ul, ol { list-style: none; } ``` 3. 重置文本对齐方式: ```css ...

    1.css选择器-属性选择器.html

    1.css选择器-属性选择器.html

    mui.picker.min.css

    mui 框架选择器的使用,需要引入 mui.picker.css,若只使用picker则引入这个即可。若要使用DtPicker则要引用mui.picker.min.css。引用js样式同理。

    scrapy爬虫之CSS选择器(比前面两个更全)

    相比XPath或其他方法,CSS选择器往往更简洁、直观,对于前端开发者来说尤其友好。 在Scrapy中,`Selector`类提供了对文档进行解析和提取数据的功能,而CSS选择器就是其主要的数据定位手段。使用CSS选择器,你可以像...

    基于animate.css和原生JS实现的鼠标滚动动画效果

    基于animate.css和原生JS实现的鼠标滚动动画效果,挺不错的CSS3动画效果,基于CSS动画插件 animate.css实现,animate.css拥有众多的动画特效而且是开源的,大家到官网看看吧。

    CSS选择器-.pdf

    此外,CSS 还提供了分组选择器,可以将多个选择器分组在一起,并应用同样的样式。例如: ```css h2, p {color: gray;} ``` 这将将 h2 和 p 元素的颜色设置为灰色。 分组选择器可以将任意多个选择器分组在一起,对此...

    前端必须掌握的css选择器方法

    下面是前端开发中经常使用的 30 个 CSS3 选择器,包括通用元素选择器、ID 选择器、类选择器、标签选择器、伪类选择器、毗邻元素选择器、子元素选择器、属性选择器等。 1. 通用元素选择器 * 通用元素选择器*是选择...

    react-React组件的css选择器

    在React开发中,CSS选择器是用于特定于组件的样式化的一种强大工具。React组件的样式管理是一个关键的方面,因为它影响着应用的可维护性和性能。本篇将深入探讨React组件与CSS选择器的结合使用,以及如何优化组件的...

    jquery.min.js+bootstrap.min.js+bootstrap.min.css

    1. **选择器**: 支持CSS选择器,可以方便地选取DOM元素。 2. **DOM操作**: 插入、删除、修改DOM元素,如`.append()`, `.remove()`, `.html()`等。 3. **事件处理**: 通过`.on()`, `.off()`, `.click()`, `.hover()`...

    jquery-ui-1.8.16.custom.min.js/jquery-ui-1.8.16.custom.css

    这个文件包含了各种UI组件的实现,如对话框(Dialog)、滑块(Slider)、日期选择器(Datepicker)、拖放功能(Draggable)、可排序元素(Sortable)以及许多其他交互元素。 `jquery-ui-1.8.16.custom.css` 文件则...

    java视屏\6.WEBBASIC\2.CSS概述 、 CSS语法 、 CSS选择器 、 CSS声明.mp4

    java视屏\6.WEBBASIC\2.CSS概述 、 CSS语法 、 CSS选择器 、 CSS声明.mp4

    30个最常用css选择器解析

    "CSS选择器详解" CSS选择器是CSS样式语言中最基本的组成部分,它们定义了样式应用于哪些HTML元素。选择器分为五种基本类型:标签选择器、class选择器、ID选择器、后代选择器和伪类选择器。 1. 星状选择符(*) 星...

    main.css 主页面选择器,仅供参考,学习使用

    css选择器 main.css 主页面选择器,仅供参考,学习使用

    CSS基本选择器实用PPT课件.pptx

    CSS 基本选择器 本资源摘要信息将着重介绍 CSS 基本选择器的概念、语法和应用,旨在帮助学习者快速掌握 CSS 基本选择器的使用和应用。 一、CSS 概念和语法 CSS 全称为 Cascading Style Sheet,即层叠样式表。它的...

    scrapy爬虫下的CSS选择器使用

    在这个主题“Scrapy爬虫下的CSS选择器使用”中,我们将深入探讨如何利用CSS选择器在Scrapy中提取网页数据。 首先,CSS(Cascading Style Sheets)选择器是用于选取HTML或XML文档中元素的工具,其在网页设计中广泛...

    前端css选择器练习diner.zip

    "前端css选择器练习diner.zip" 是一个针对CSS选择器学习和实践的资源包,名为"css-diner"。 在"css-diner"这个练习中,你可以深入理解并掌握各种CSS选择器的用法,从而提升你的前端开发技能。以下是一些关于CSS选择...

    [精通DIV.CSS网页样式与布局].何丽.扫描版

    4. CSS选择器:书中详细介绍了各种选择器的用法,如类型选择器(如`h1`)、类选择器(如`.myClass`)、ID选择器(如`#myID`)、后代选择器(如`div p`)和伪类选择器(如`:hover`)。了解并熟练使用这些选择器,可以...

Global site tag (gtag.js) - Google Analytics