css的content 属性实现 css 计数器(伪元素与content实现)

伪元素与content简介

什么是伪元素?

CSS 伪元素用于设置元素指定部分的样式。

例如,它可用于:
设置元素的首字母、首行的样式
在元素的内容之前或之后插入内容

伪元素的语法:

selector::pseudo-element {
  property: value;
}

CSS - ::after 伪元素

::after 伪元素可用于在元素内容之后插入一些内容。

下面的例子在每个div元素的内容之后插入一幅图像:

div::after {
  content: url(smile.gif);
}

CSS - ::before 伪元素

::before 伪元素可用于在元素内容之前插入一些内容。

下面的例子在每个div元素的内容之前插入一幅图像:

div::before {
  content: url(smile.gif);
}

content的作用

这里的content属性是配合::before或::after来生成内容,默认生成的元素为行内元素。

content属性的值除了使用文本值之外,还可以通过attr()方法来使用其它标签的属性值

<a class="test" href="http://www.xxx.com/">欢迎来到xxx </a>
a.test:after{
    content: attr(href);
}

css计数器

css计数器只能跟content属性一起使用时才有作用

相关属性

1.counter-reset

该属性定义计数器的名称,可以同时定义多个计数器,定义数字时代表初始值,缺省默认为0:

div.count{
    counter-reset: count1 count2;
}

如上代码定义两个计数器count1和count2,初始默认为0。

2.counter-increment

该属性接收两个参数,第一个参数代表计数器的名称,第二个代表每次递增的值,缺省时默认为1

div.count::before{
    counter-increment: count1 2;
}

此行代码定义计数器count1单次自增值为,此时计数器默认初始值为0+2=2;若这里将数字2缺省,则默认自增值为1,此时计数器初始值为0+1=1。

3. counter()/counters()

该方法为计数器调用方法,接收两个参数,第一个参数为计数器名称,第二个为数值类型

计数器示例

<!DOCTYPE html>
<html lang="en">
	<head>
		<meta charset="UTF-8">
		<title>Demo</title>
		<style>
			li {
				list-style: none;
			}

			.father {
				padding-left: 20px;
				counter-reset: count;
				line-height: 1.6;
				color: #666;
			}

			.son::before {
				content: counters(count, '-') '. ';
				counter-increment: count;
				font-family: arial black;
			}
		</style>
	</head>
	<body>
		<ul class="father">
			<li class="son">HTML
				<ul class="father">
					<li class="son">常用html标签</li>
					<li class="son">标签按自身属性的分类</li>
					<li class="son">HTML5新增标签</li>
				</ul>
			</li>
			<li class="son">CSS
				<ul class="father">
					<li class="son">CSS的引入方式
						<ul class="father">
							<li class="son">行内式</li>
							<li class="son">内嵌式</li>
							<li class="son">外链式</li>
							<li class="son">导入式</li>
						</ul>
					</li>
					<li class="son">CSS选择器</li>
					<li class="son">CSS的书写规范</li>
				</ul>
			</li>
			<li class="son">JS</li>
			<li class="son">web前端</li>
		</ul>
	</body>
</html>

效果:
在这里插入图片描述

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值