【从0到1学Web前端】CSS伪类和伪元素 分类: HTML+CSS 2015-06-02 22:29 1065人阅读 评论(0) 收藏
1.CSS中的伪类
CSS 伪类用于向某些选择器添加特殊的效果。
语法:
selector : pseudo-class {property: value}CSS 类也可与伪类搭配使用
selector.class : pseudo-class {property: value}如下面的一段代码:
a.red : visited {color: #FF0000}
<a class="red" href="css_syntax.asp">CSS Syntax</a>1.1锚伪类
在支持 CSS 的浏览器中,链接的不同状态都可以不同的方式显示,这些状态包括:活动状态,已被访问状态,未被访问状态,和鼠标悬停状态。
a:link {color: #FF0000} /* 未访问的链接 */
a:visited {color: #00FF00}  /* 已访问的链接 */
a:hover {color: #FF00FF}    /* 鼠标移动到链接上 */
a:active {color: #0000FF}   /* 选定的链接 */注意:
1.在 CSS 定义中,a:hover 必须被置于 a:link 和 a:visited之后,才是有效的。 
2.在 CSS 定义中,a:active 必须被置于a:hover 之后,才是有效的。 
3.伪类名称对大小写不敏感。
1.2 CSS2 - :first-child 伪类
定义:
first-child 伪类来选择元素的第一个子元素。
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style type="text/css">
        p:first-child {font-weight: bold;}
        li:first-child {text-transform:uppercase;}
    </style>
</head>
<body>
    <div>
        <p>These are the necessary steps:</p>
        <ul>
            <li>Intert Key</li>
            <li>
                Turn key <strong>clockwise</strong>
            </li>
            <li>Push accelerator</li>
        </ul>
        <p>
            Do <em>not</em>
            push the brake at the same time as the accelerator.
        </p>
    </div>
</body>
</html>效果如下图: 
第一个规则将作为某元素第一个子元素的所有 p 元素设置为粗体。第二个规则将作为某个元素(在 HTML 中,这肯定是 ol 或 ul 元素)第一个子元素的所有 li 元素变成大写。
必须声明
<!DOCTYPE>,这样 :first-child 才能在 IE 中生效。
<style type="text/css">
p:first-child {
  color: red;
  }
</style>选择器匹配作为任何元素的第一个子元素的 p 元素
<style type="text/css">
p > i:first-child {
  font-weight:bold;
  }
</style>选择器匹配所有 <p>元素中的第一个<i>元素
<style type="text/css">
p:first-child i {
  color:blue;
  }
</style>选择器匹配所有作为元素的第一个子元素的 <p>元素中的所有 <i>元素
1.3 CSS2 - :lang 伪类
:lang 伪类使你有能力为不同的语言定义特殊的规则
<style type="text/css">
        q:lang(no) {
                quotes: "~" "~"
        }
    </style>
    <body>
        <p>
            文字
            <q lang="no">段落中的引用的文字</q>
            文字
        </p>
</body>2.CSS中的伪元素
CSS 伪元素用于将特殊的效果添加到某些选择器。
语法:
伪元素的语法:
选择器 : 伪元素 { 属性: 值 }CSS 类也可以与伪元素配合使用:
选择器 . 类: 伪元素 { 属性: 值 }p.article:first-letter {color: #FF0000}
<p class="article">文章中的一个段落。</p>:first-line的使用方法:
p {font-size: 12pt}
p:first-line {color: #0000FF; font-variant: small-caps}
first-line 伪元素仅能被用于块级元素。
下面的属性可以被应用到 first-line 伪元素:
font 属性
color 属性
background 属性
word-spacing
letter-spacing
text-decoration
vertical-align
text-transform
line-height
clear
2.1多重伪元素
p {font-size: 12pt;}
p:first-letter {color: #FF0000; font-size: 24pt;}
p:first-line {color: #0000FF;}
<p>The first words of an article</p>2.2 CSS2 - :before 伪元素
before(>=IE8) 伪元素可用于在某个元素之前插入某些内容。
h1:before
{
    content: url(beep.wav)
}2.3 CSS2 - :after 伪元素
after(>=IE8) 伪类可用于在某个元素之后插入某些内容。
h1:after
{
    content: url(beep.wav)
}content 属性与 :before 及 :after 伪元素配合使用,来插入生成内容。
a:after
  {
  content: " (" attr(href) ")";
  }版权声明:本文为博主原创文章,未经博主允许不得转载。
【从0到1学Web前端】CSS伪类和伪元素 分类: HTML+CSS 2015-06-02 22:29 1065人阅读 评论(0) 收藏的更多相关文章
- 1.PHP站内搜索                                                       分类:            PHP开发实例             2015-07-31 22:48    4人阅读    评论(0)    收藏
		PHP站内搜索:多关键字.加亮显示 1.SQL语句中的模糊查找 $sql = "SELECT * FROM `message` WHERE `content`like '%$k[0]%' a ... 
- 全方位分析Objcetive-C Runtime                                                    分类:            ios技术             2015-03-11 22:29    77人阅读    评论(0)    收藏
		本文详细整理了 Cocoa 的 Runtime 系统的知识,它使得 Objective-C 如虎添翼,具备了灵活的动态特性,使这门古老的语言焕发生机.主要内容如下: 引言 简介 与Runtime交互 ... 
- UI基础:视图控制器.屏幕旋转.MVC                                                    分类:            iOS学习-UI             2015-07-02 22:21    62人阅读    评论(0)    收藏
		UIViewController 视图控制器,继承自UIResponder,作用:管理视图并且响应事件 功能: 1.分担APPdelegate的工作 2.实现模块独立,能提高复用性 创建UIViewC ... 
- UI基础:UI程序执行顺序(UIApplicationMain()函数),自定义视图                                                    分类:            iOS学习-UI             2015-07-02 22:09    68人阅读    评论(0)    收藏
		UI程序的一般执行顺序: 先进入main里面,执行函数UIApplicationMain(),通过该函数创建应用程序对象和指定其代理并实现监听,当执行函数UIApplicationMain()时还会做 ... 
- 修改android应用包名                                                    分类:            android             学习笔记             2015-07-16 22:48    4人阅读    评论(0)    收藏
		由于项目需要,要修改已经开发好的应用包名,这本身很简单,但是如果你没找到门道,可能会白白浪费许多时间. 修改包名有三个地方要改,这三个地方的修改一定要按顺序来,否则你可能会遇到许多不必要的麻烦. 1. ... 
- 【从0到1学Web前端】CSS定位问题一(盒模型,浮动,BFC)                                                       分类:            HTML+CSS             2015-05-27 22:24    813人阅读    评论(1)    收藏
		引子: 在谈到css定位问题的时候先来看一个小问题: 已知宽度(假如:100px)div框,水平居中,左右两百年的分别使用div框填充.且左右div自适应. 效果如下图: 这个问题的难点主要是浏览器宽 ... 
- CSS_Spirte实现原理                                                       分类:            HTML+CSS             2015-04-28 22:58    531人阅读    评论(0)    收藏
		CSS Spirte就是所谓的把很多的小图标合并成一张大的图片,然后使用CSS的background-position属性,来动态的定位自己需要图标的位置.这样做的目的主要是减少HTTP请求,加快网页 ... 
- XHTML 结构化:使用 XHTML 重构网站                                                    分类:            C1_HTML/JS/JQUERY             2014-07-31 15:58    249人阅读    评论(0)    收藏
		http://www.w3school.com.cn/xhtml/xhtml_structural_01.asp 我们曾经为本节撰写的标题是:"XHTML : 简单的规则,容易的方针.&qu ... 
- hdu 1039 (string process, fgets, scanf, neat utilization of switch clause)                                                       分类:            hdoj             2015-06-16 22:15    38人阅读    评论(0)    收藏
		(string process, fgets, scanf, neat utilization of switch clause) simple problem, simple code. #incl ... 
随机推荐
- centos7,配置nginx服务器
			安装准备 首先由于nginx的一些模块依赖一些lib库,所以在安装nginx之前,必须先安装这些lib库,这些依赖库主要有g++.gcc.openssl-devel.pcre-devel和zlib-d ... 
- js,JavaScript 监听 判断 移动端 滑动事件
			<script> var startx, starty; //获得角度 function getAngle(angx, angy) { return Math.atan2(angy, an ... 
- php常量 const 和 define
			常量是一个简单的标识符.在脚本执行期间该值不能改变(除了所谓的魔术常量,他们其实不是常量).常量默认大小写敏感.通常常量标识符总是大写的. 可以用define()函数来定义常量.在php5.3.0以后 ... 
- 阿里ETL工具datax学习(一)
			阿里云开源离线同步工具DataX3.0介绍 一. DataX3.0概览  DataX 是一个异构数据源离线同步工具,致力于实现包括关系型数据库(MySQL.Oracle等).HDFS.Hive.Ma ... 
- codeforces 891 b
			B. Gluttony time limit per test 2 seconds memory limit per test 256 megabytes input standard input o ... 
- hdu 5013 优化疑问+dp
			http://acm.hdu.edu.cn/showproblem.php?pid=5013 m个游客,n座城市(m, n <= 16), 每个人从1走到n, 每次有一定概率停在原地,然后以后就 ... 
- maven 添加jdbc6
			1 把jdbc6 拷贝到C:\Users\{用户}\ 2 mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc6 -Dver ... 
- 【javascript】您好, 您要的ECMAScript6速记套餐到了 (一)
			[前言]本文“严重参考” 自阮一峰老师写的ES6文档,在此我郑重感谢他沉默无声的帮助 总结一下ES6为 javascript中的 对象/数组/函数 这JS三巨头所提供的更简洁优雅的书写方式,以及扩展的 ... 
- C语言实现windows进程遍历
			#include <windows.h> #include <tlhelp32.h> //进程快照函数头文件 #include <stdio.h> int main ... 
- tomcat单机多实例部署
			最近在面试的过程中,一家公司在面试时提到了有关tomcat单机多实例部署的提问, 正好, 之前使用IntelliJ IDEA 13.1.4这款IDE开发web项目,在开发的过程中,因为有多个web项目 ... 
