CSS3学习系列之选择器(四)
- 使用选择器来插入文字
css2中,使用before选择器在元素前面插入内容,使用after选择器在元素后面插入内容,在选择器的content属性中定义要插入的内容。将content属性值设定为none,然后在不需要插入内容的元素中将class属性值设定为这个给定的类名就可以了。另外,在CSS2.1中,除了none属性值外,还未content属性添加了一个normal属性值,其作用与使用方法none属性值的作用相同,并且使用方法也相同。从css2.1开始,值右当使用before选择与after选择器的时候,normal属性值的作用才与none属性值的作用相同,都是不让选择器在个别元素的前面或后面插入内容,但是none属性值只能应用在这两个选择器中,而normal属性值还可以应用在其他用来插入内容的选择器中,而在css2中,只有before选择器与after选择器能够用来在元素的前面或后面插入内容,所以在两者的作用完全相同,在css3中,已经追加了其他一些可以插入内容的选择的提案,针对这一类选择器,就只能用normal属性值了,而且normal属性值的作用也会根据选择器的不同而发生变化。
- 插入图像文件
h2:before{
content:url(mark.png)
}
<h2>你好</h2>
目前firefox、safari、opera浏览器都支持这种插入图像文件的功能,在ie8中只支持插入文字的功能,不支持插入图像文件的功能。
另外在css3的定义中还可以通过url属性来插入音频文件、视频文件等其他格式的文件,但目前还没有得到任何浏览器的支持。
- 将alt属性的值作为图像的标题来显示
如果在content属性中通过”attr(属性名)”这种形式来指定attr属性值,可以将某个属性的属性值显示出来,例子:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>attr属性的使用示例</title>
<style>
img:after{
content:attr(alt);
display: block;
text-align: center;
margin-top: 5px;
}
</style>
</head>
<body>
<div>
<p><img src="sky.jpg" alt="蓝天白云"/></p>
</div>
</body>
</html>
- 在多个标题前加上连续编号
在content属性中使用counter属性值来针对多个项目追加连续编号,使用方法如下所示:
<元素>:before{
content:counter(计数器名);
}
使用计数器来计算编号,计数器可以任意命名。
另外,还需要在元素的样式中追加对元素的counter-increment属性的指定,为了使用连续编号,需要将counter-increment属性的属性值设定为before选择器或after选择的counter属性值中所指定的计数器名。代码如下:
<元素>{
Counter-increment:before选择器或after选择器中指定的计数器名
}
例子:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>对多个项目追加连续编号的示例</title>
<style>
h1:before {
content:counter(mycounter);
}
h1{
counter-increment: mycounter;
}
</style>
</head>
<body>
<div>
<h1>大标题</h1>
<p>示例文字</p>
<h1>大标题</h1>
<p>示例文字</p>
<h1>大标题</h1>
<p>示例文字</p>
</div>
</body>
</html>
- 在项目编号中追加文字
可以在插入的项目编号中加入文字,使项目编号变成类似”第1章”之类的带文字的编号。例如:
h1:before{
content:’第’counter(mycounter)’章’
}
- 指定编号的种类
用before选择器或after选择器的content属性,不仅可以追加数字编号,还可以追加字母编号或罗马数字编号。使用如下所示的方法指定编号种类。
content:counter(计数器名,编号种类)
可以使用list-style-type属性的值来指定编号的种类,list-style-type为指定列表编号时所用的属性。
- 编号嵌套
使用嵌套编号如下:
h1{
counter-increment:mycounter
counter-reset:subcounter
}
例如:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>编号嵌套示例</title>
<style>
h1:before {
content:counter(mycounter)'.';
}
h1{
counter-increment: mycounter;
counter-reset: subcounter;
}
h2:before{
content: counter(subcounter)'.';
}
h2{
counter-increment: subcounter;
margin-left: 40px;
}
</style>
</head>
<body>
<h1>大标题</h1>
<h2>中标题</h2>
<h2>中标题</h2>
<h2>中标题</h2>
<h1>大标题</h1>
<h2>中标题</h2>
<h2>中标题</h2>
<h2>中标题</h2>
</body>
</html>
- 中编号中嵌入大编号
可以将大编号嵌入在中编号中。例如:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>编号多层嵌入的示例</title>
<style>
h1:before {
content:counter(mycounter)'.';
}
h1{
counter-increment: mycounter;
counter-reset: subcounter;
}
h2:before{
content: counter(mycounter)'-'counter(subcounter)'.';
}
h2{
counter-increment: subcounter;
counter-reset: subsubcounter;
margin-left: 40px;
}
h3:before{
content: counter(mycounter)'-'counter(subconter)'-'counter(subsubcounter)'.';
}
h3{
counter-increment: subsubcounter;
margin-left: 40px;
}
</style>
</head>
<body>
<h1>大标题</h1>
<h2>中标题</h2>
<h3>小标题</h3>
<h3>小标题</h3>
<h2>中标题</h2>
<h3>小标题</h3>
<h3>小标题</h3>
<h1>大标题</h1>
<h2>中标题</h2>
<h3>小标题</h3>
<h3>小标题</h3>
<h2>中标题</h2>
<h3>小标题</h3>
<h3>小标题</h3>
</body>
</html>
- 在字符串两边添加嵌套文字符号
可以使用conten属性的open-quote属性值与close-quote属性值在字符串两边添加诸如括号,单引号,双引号之类的嵌套文字符号,open-quote属性值用于添加开始的嵌套文字符号,close-quote属性值用于添加结尾的嵌套文字符号。
例如:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>添加嵌套文字符号的示例</title>
<style>
h1:before {
content: open-quote;
}
h1:after{
content: close-quote;
}
h1{
quotes:"("")";
}
</style>
</head>
<body>
<h1>标题</h1>
</body>
</html>
CSS3学习系列之选择器(四)的更多相关文章
- css3学习系列之选择器(一)
CSS3中的属性选择器 [att*=val]属性选择器:[att*=val]属性选择器的含义是:如果元素att表示的属性之属性值中包含用val指定的字符的话,则该元素使用这个样式. [att^=val ...
- CSS3学习系列之选择器(二)
first-child选择器和last-child选择器 first-child指定第一个元素.last-child指定最后一个子元素. 例如: <!DOCTYPE html> <h ...
- CSS3学习系列之选择器(三)
E:enabled伪类选择器和E:disabled伪类选择器 E:enabled伪类选择器用来指定元素处于可用状态的样式. E:disabled伪类选择器用来指定当元素处于不可用状态时的样式. 当一个 ...
- css3学习总结1--CSS3选择器
CSS3的属性选择器主要包括以下几种: 1. E[attr^="value"]:指定了属性名,并且有属性值,属性值是以value开头的: 2. E[attr$="valu ...
- [CSS3] 学习笔记-CSS选择器
CSS3中,选择器的分类很多,有元素选择器.类选择器.ID选择器.属性选择器.后代选择器.子元素选择器.相邻兄弟选择器. 1.最常见的选择器就是元素选择器,文档的元素就是最基本的选择器,例如,h1{} ...
- CSS3学习系列之背景相关样式(二)
在border-radius属性中指定两个半径 在border-radius属性中,可以指定两个半径,指定方法如下所示: border-radius:40px 20px; 针对这种情况,各种浏览器的处 ...
- CSS3学习系列之字体
给文字添加阴影 在CSS3中,可以使用text-shadow属性给页面上的文字添加阴影效果.text-shadow属性是在css2中定义的,在css2.1中删除,在css3的text模块中有恢复了,用 ...
- CSS3学习系列之盒样式(一)
盒的基本类型 在css中,使用display属性来定义盒的类型,总体上来说,css中的盒分为block类型与inline类型 inline-block类型 inline-block类型是在css2.1 ...
- CSS3学习系列之盒样式(二)
text-overflow属性 当通过把overflow属性的属性值设定为"hidden"的方法,将盒中容纳不下的内容隐藏起来时,如果使用text-overflow属性,可以在盒的 ...
随机推荐
- 通过bootloader向内核传输启动参数
作者:Younger Liu,本作品采用知识共享署名-非商业性使用-相同方式共享 3.0 未本地化版本许可协议进行许可. Linux提供了一种通过bootloader向其传输启动参数的功能,内核开发者 ...
- 需求收集实例三之 FM
暂且叫这个项目叫FM.FM项目采用敏捷模式,需求的表现形式是Story. 此项目需求收集过程如下: 亮点:在公司第一次实践敏捷.用Story 而非 需求说明文档呈现需求. 败笔:没有处理好Story ...
- 源于《Unity官方实例教程 “Space Shooter”》思路分析及相应扩展
教程来源于:Unity官方实例教程 Space Shooter(一)-(五) http://www.jianshu.com/p/8cc3a2109d3b 一.经验总结 教程中步骤清晰,并且 ...
- hdu2767强连通加缩点
https://vjudge.net/contest/156688#problem/B 题目说了一大堆,前面的没有用,就是让你判断要加几条边才能强连通,用到缩点的知识 二重循环,判断邻接表下一个点是不 ...
- SQL语法考核
--继上一篇MySQL的开发总结之后,适当的练习还是很有必要的-- SQL语法多变,不敢保证唯一,也不敢保证全对,如果错误欢迎指出,即刻修改. 一.现有表结构如下图 TABLENAME:afinfo ...
- arm处理器
arm处理器 arm处理器相关 1.体系架构定义了指令集(ISA)和基于这一体系结构下处理器的编程模型. arm卖的是架构或者已经设计好的公版ip核 卖给苹果高通的是架构,需要苹果高通通过架构设计自己 ...
- UnicodeDecodeError: 'utf-8' codec can't decode byte 0xce in position 22: invalid continuation byte
在使用python读取文本文件,一般会这样写: # -*- coding:utf-8 -*- f = open("train.txt", "r", encodi ...
- Hadoop中MapReduce作业流程图
MapReduce的流程分为11个步骤,4个实体 1.客户端:编写MapReduce的代码,配置作业,提交作业 2.JobTracker:初始化作业,分配作业,与TaskTracker通信,协调整个作 ...
- DB太大?一键帮你收缩所有DB文件大小(Shrink Files for All Databases in SQL Server)
本文介绍一个简单的SQL脚本,实现收缩整个Microsoft SQL Server实例所有非系统DB文件大小的功能. 作为一个与SQL天天打交道的程序猿,经常会遇到DB文件太大,把空间占满的情况: 而 ...
- 使用FileSystem自带的api读取hdfs中的文件
博客搬家自https://my.oschina.net/itsyizu/blog/ 1. 创建hadoop MapReduce项目 输入项目名称 创建好的项目初始化状态如下 编写java类 impor ...