id与class选择符

id与class选择符都是自定义标签名字的选择符,但id是唯一的,class却可重复使用。

id选择符以"#"定义

class选择符以"."定义

#id{
color:red;
}
.class{
color:blue;
} <p id="id">id选择符</p>
<p class="class">class选择符</p>

伪类选择符

/*设置超链接a在未被访问前的样式*/
a:link{
color:black;
}
/*设置超链接a在其连接地址已被访问过时的样式*/
a:visited{
color: #ccc;
}
/*设置鼠标悬停在元素上时的样式*/
a:hover{
color:red;
}
/*设置元素在被用户激活时的样式(在鼠标点击后不释放时)*/
a:active{
color: blue;
}
.s{
color:red;
}
/*匹配不含有s选择符的元素p*/
p:not(s){
color:blue;
} <p class="s">111</p>
<p>222</p>

效果图:

/*匹配父元素的第一个*/
ul li:first-child{
color: red;
}
/*匹配父元素的最后一个*/
ul li:last-child{
color: blue;
}
/*匹配父元素的倒数第二个*/
ul li:nth-last-child(2){
color:green;
}
/*匹配父元素的第二个*/
ul li:nth-child(2){
color:purple;
}
<ul>
<li>列表第1行</li>
<li>列表第2行</li>
<li>列表第3行</li>
<li>列表第4行</li>
<li>列表第5行</li>
</ul>

效果图:

E:only-child        

匹配父元素仅有的一个子元素E

要使该属性生效,E元素必须是某个元素的子元素,E的父元素最高是body,即E可以是body的子元素

li:only-child {
color: #f00;
} <ul>
<li>只有唯一一个子元素</li>
</ul>
/*匹配同类型中的第一个同级兄弟元素p*/
p:first-of-type{
color:red;
}
/*匹配同类型中的最后一个同级兄弟元素p*/
p:last-of-type{
color:blue;
}
/*匹配同类型中的第n个同级兄弟元素p*/
p:nth-of-type(2){
color:purple;
}
/*匹配同类型中的倒数第n个同级兄弟元素p*/
p:nth-last-of-type(2){
color:green;
}
/*匹配同类型中的唯一的一个同级兄弟元素small*/
small:only-of-type{
color:#ccc;
}
<p>第1个p标签</p>
<p>第2个p标签</p>
<p>第3个p标签</p>
<p>第4个p标签</p>
<p>第5个p标签</p>
<small>唯一的small</small>

E:focus

设置元素在成为输入焦点时的样式。(该元素的onfocus事件发生)

input:focus{
outline: solid 2px red;
} <input type="text" />

E:empty

匹配没有任何子元素(包括text节点)的元素E。

p:empty {
height: 25px;
width:25px;
background: #ccc;
} <p><!--没有东西的p--><p>
<p>有东西的p<p>

E:checked

匹配用户界面上处于选中状态的元素E。(用于input type为radio与checkbox时)

input:checked{
width: 30px;
} <input type="radio" name="1"/>1
<input type="radio" name="1"/>2
<input type="radio" name="1"/>3

E:enabled

匹配用户界面上处于可用状态的元素E。

E:disabled

匹配用户界面上处于禁用状态的元素E。

li {
padding: 3px;
}
input[type="text"]:enabled {
border: 1px solid #090;
background: #fff;
color: #000;
}
input[type="text"]:disabled {
border: 1px solid #ccc;
background: #eee;
color: #ccc;
}
<ul>
<li><input type="text" value="可用状态" /></li>
<li><input type="text" value="可用状态" /></li>
<li><input type="text" value="禁用状态" disabled="disabled" /></li>
<li><input type="text" value="禁用状态" disabled="disabled" /></li>
</ul>

E:target

匹配相关URL指向的E元素。

URL后面跟锚点#,指向文档内某个具体的元素。这个被链接的元素就是目标元素(target element),:target选择器用于选取当前活动的目标元素。

a:target{
color: red;
} <a href="#n1" id="n1">链接1</a>
<a href="#n2" id="n2">链接2</a>
<a href="#n3" id="n3">链接3</a>

CSS3初学篇章_2(伪类选择符)的更多相关文章

  1. CSS3初学篇章_3(属性选择符/字体样式/元素样式)

    属性选择符  选择符  说明  E[att]  选择具有att属性的E元素.  E[att="val"]  选择具有att属性且属性值等于val的E元素.  E[att~=&quo ...

  2. css伪类选择符

    1):link/:visited/:hover/:active (爱恨原则 love/hate)2):first-child/:last-child/:only-child/:nth-child(n) ...

  3. CSS选择符-----伪类选择符

    Element:hover E:hover { sRules }  设置元素在其鼠标悬停时的样式 <!DOCTYPE html> <html> <head> < ...

  4. CSS Pseudo-Element Selectors伪对象选择符

    一: CSS3将伪对象选择符(Pseudo-Element Selectors)前面的单个冒号(:)修改为双冒号(::)用以区别伪类选择符(Pseudo-Classes Selectors),但以前的 ...

  5. 妙味css3课程---1-2、css3中新增的伪类和伪元素有哪些

    妙味css3课程---1-2.css3中新增的伪类和伪元素有哪些 一.总结 一句话总结: 1.div:target{}是什么意思? 比如a标签的锚点链接到div,div:target{}就可以找到这个 ...

  6. CSS :hover伪类选择定义和用法

    伪类选择符E:hover的定义和用法: 设置元素在其鼠标悬停时的样式.E元素可以通过其他选择器进行选择,比如使用类选择符.id选择符.类型选择符等等.特别说明:IE6并非不支持此选择符,但能够支持a元 ...

  7. #8.10.16总结# 属性选择符 伪对象选择符 CSS的常用样式

    属性选择符 E[att] E[att="val"] E[att~="val"] E[att^="val"] E[att$="val ...

  8. 说说ID选择符、类选择符和HTML标记选择符的优先级顺序

    ID选择符.类选择符和HTML标记选择符三者之间的优先级顺序是:ID选择符>类选择符>HTML标记选择符,但是可以用!important提升优先权. 如:       p{color:#f ...

  9. 第91天:CSS3 属性选择器、伪类选择器和伪元素选择器

    一.属性选择器 其特点是通过属性来选择元素,具体有以下5种形式: 1.E[attr] 表示存在attr属性即可:    div[class] 2.E[attr=val] 表示属性值完全等于val:   ...

随机推荐

  1. 如果 if - 迈克.杰克逊的墓志铭

    引用http://www.duwenzhang.com/wenzhang/yingyuwenzhang/20110215/171059.html IF you can keep your head w ...

  2. 对于c语言int类型和float,以及double类型表示范围的计算

    首先说一下我原来错误的认识 int是32个bit, 如果我们把第一位理解为符号位,那么很显然int的范围是-(2^31-1)~2^31-1 但是实际上我们都知道int的最小值是-2^31次.. 为什么 ...

  3. 如何给你的ASP.NET页面添加HelpPage

    如何给你的ASP.NET页面添加HelpPage 最近写了一些webAPI,所以需要搞一套API的帮助文档,google了一下,发现这是可以自动生成的,以下就是如何自动生成HelpPage的说明. 参 ...

  4. JAVA多线程实现的四种方式

    Java多线程实现方式主要有四种:继承Thread类.实现Runnable接口.实现Callable接口通过FutureTask包装器来创建Thread线程.使用ExecutorService.Cal ...

  5. Struts2零配置介绍(约定访问)

    从struts2.1开始,struts2 引入了Convention插件来支持零配置,使用约定无需struts.xml或者Annotation配置 需要 如下四个JAR包 插件会自动搜索如下类 act ...

  6. sublime快捷键大全

    转自:http://blog.useasp.net/archive/2013/06/14/sublime-text-2-all-default-Shortcuts-table-on-windows-t ...

  7. BurpSuite拦截HTTPS请求

    1.设置好浏览器代理 2. 3.请求https站点(比如https://www.baidu.com),以火狐浏览器例子: 4. 这一步主要是为了显示[我已充分了解可能的风险],如果有,就不用做以上步骤 ...

  8. 廖雪峰js教程笔记 2

    arguments JavaScript还有一个免费赠送的关键字arguments,它只在函数内部起作用,并且永远指向当前函数的调用者传入的所有参数.arguments类似Array但它不是一个Arr ...

  9. 【JAVA】数字相加

    设计思想:定义双精度变量 i 和 s=0 ,定义另一个变量 n 作为计数,方便之后求平均值.程序里将数据输入 i 中,通过 s 来将各个数据求和,最后除 n 得平均值. 程序流程图: 源程序代码: p ...

  10. DSP using MATLAB示例Example3.6

    代码: n = [-5:5]; x = (-0.9).^n; % x(n) = k = -200:200; w = (pi/100)*k; % [0,pi] axis divided into 101 ...