CSS3的content属性详解_html/css_WEB-ITnose
CSS中主要的伪元素有四个:before/after/first-letter/first-line,在before/after伪元素选择器中,有一个content属性,能够实现页面中的内容插入。
插入纯文字
content:"插入的文章",或者content:none不插入内容
html:
<h1 id="这是h">这是h1</h1><h2 id="这是h">这是h2</h2>
css
h1::after{ content:"h1后插入内容"}h2::after{ content:none}
运行结果:https://jsfiddle.net/dwqs/Lmm1r08x/
嵌入文字符号
可以使用content属性的open-quote属性值和close-quote属性值在字符串两边添加诸如括号、单引号、双引号之类的嵌套文字符号。open-quote用于添加开始的文字符号,close-quote用于添加结束的文字符号。修改上述的css:
h1{ quotes:"(" ")"; /*利用元素的quotes属性指定文字符号*/}h1::before{ content:open-quote;}h1::after{ content:close-quote;}h2{ quotes:"\"" "\""; /*添加双引号要转义*/}h2::before{ content:open-quote;}h2::after{ content:close-quote;}
运行结果:https://jsfiddle.net/dwqs/p8e3qvv4/
插入图片
content属性也可以直接在元素前/后插入图片
html:
<h3 id="这是h">这是h3</h3>
css:
h3::after{ content:url(http://ido321.qiniudn.com/wp-content/themes/yusi1.0/img/new.gif)}
运行结果:https://jsfiddle.net/dwqs/c6qk6pkv/
插入元素的属性值
content属性可以直接利用attr获取元素的属性,将其插入到对应位置。
html:
<a href="http:///www.ido321.com">这是链接 </a>
css:
a:after{ content:attr(href);}
运行结果:https://jsfiddle.net/dwqs/m220nzan/
插入项目编号
利用content的counter属性针对多个项目追加连续编号.
html:
<h1 id="大标题">大标题</h1><p>文字</p><h1 id="大标题">大标题</h1><p>文字</p><h1 id="大标题">大标题</h1><p>文字</p><h1 id="大标题">大标题</h1><p>文字</p>
css:
h1:before{ content:counter(my)'.';}h1{ counter-increment:my;}
运行结果:https://jsfiddle.net/dwqs/2ueLg3uj/
项目编号修饰
默认插入的项目编号是数字型的,1,2,3.。。。自动递增,也能给项目编号追加文字和样式,依旧利用上面的html,css修改如下:
h1:before{ content:'第'counter(my)'章'; color:red; font-size:42px;}h1{ counter-increment:my;}
运行结果:https://jsfiddle.net/dwqs/17hqznca/
指定编号种类
利用content(计数器名,编号种类)格式的语法指定编号种类,编号种类的参考可以依据ul的list-style-type属性值。利用上述的html,css修改如下:
h1:before{ content:counter(my,upper-alpha); color:red; font-size:42px;}h1{ counter-increment:my;}
运行结果:https://jsfiddle.net/dwqs/4nsrtxup/
编号嵌套
大编号中嵌套中编号,中编号中嵌套小编号。
html:
<h1 id="大标题">大标题</h1><p>文字1</p><p>文字2</p><p>文字3</p><h1 id="大标题">大标题</h1><p>文字1</p><p>文字2</p><p>文字3</p><h1 id="大标题">大标题</h1><p>文字1</p><p>文字2</p><p>文字3</p>
css:
h1::before{ content:counter(h)'.';}h1{ counter-increment:h;}p::before{ content:counter(p)'.'; margin-left:40px;}p{ counter-increment:p;}
运行结果:https://jsfiddle.net/dwqs/2k5qbz51/
在示例的输出中可以发现,p的编号是连续的。如果对于每一个h1后的三个p重新编号的话,可以使用counter-reset属性重置,修改上述h1的css:
h1{ counter-increment:h; counter-reset:p;}
这样,编号就重置了,看看结果:https://jsfiddle.net/dwqs/hfutu4Lq/
还可以实现更复杂的嵌套,例如三层嵌套。
html:
<h1 id="大标题">大标题</h1><h2 id="中标题">中标题</h2><h3 id="小标题">小标题</h3><h3 id="小标题">小标题</h3><h2 id="中标题">中标题</h2><h3 id="小标题">小标题</h3><h3 id="小标题">小标题</h3><h1 id="大标题">大标题</h1><h2 id="中标题">中标题</h2><h3 id="小标题">小标题</h3><h3 id="小标题">小标题</h3><h2 id="中标题">中标题</h2><h3 id="小标题">小标题</h3><h3 id="小标题">小标题</h3>
css:
h1::before{ content:counter(h1)'.';}h1{ counter-increment:h1; counter-reset:h2;}h2::before{ content:counter(h1) '-' counter(h2);}h2{ counter-increment:h2; counter-reset:h3; margin-left:40px;}h3::before{ content:counter(h1) '-' counter(h2) '-' counter(h3);}h3{ counter-increment:h3; margin-left:80px;}
运行结果:https://jsfiddle.net/dwqs/wuuckquy/
张大大有一篇利用counter实现计数的文章:小tip:CSS计数器+伪类实现数值动态计算与呈现
原文:http://www.ido321.com/1555.html

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics











HTML is suitable for beginners because it is simple and easy to learn and can quickly see results. 1) The learning curve of HTML is smooth and easy to get started. 2) Just master the basic tags to start creating web pages. 3) High flexibility and can be used in combination with CSS and JavaScript. 4) Rich learning resources and modern tools support the learning process.

WebdevelopmentreliesonHTML,CSS,andJavaScript:1)HTMLstructurescontent,2)CSSstylesit,and3)JavaScriptaddsinteractivity,formingthebasisofmodernwebexperiences.

HTML defines the web structure, CSS is responsible for style and layout, and JavaScript gives dynamic interaction. The three perform their duties in web development and jointly build a colorful website.

GiteePages static website deployment failed: 404 error troubleshooting and resolution when using Gitee...

AnexampleofastartingtaginHTMLis,whichbeginsaparagraph.StartingtagsareessentialinHTMLastheyinitiateelements,definetheirtypes,andarecrucialforstructuringwebpagesandconstructingtheDOM.

To achieve the effect of scattering and enlarging the surrounding images after clicking on the image, many web designs need to achieve an interactive effect: click on a certain image to make the surrounding...

HTML, CSS and JavaScript are the three pillars of web development. 1. HTML defines the web page structure and uses tags such as, etc. 2. CSS controls the web page style, using selectors and attributes such as color, font-size, etc. 3. JavaScript realizes dynamic effects and interaction, through event monitoring and DOM operations.

The Y-axis position adaptive algorithm for web annotation function This article will explore how to implement annotation functions similar to Word documents, especially how to deal with the interval between annotations...
