IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

CSS3 target伪类简介

前端观察 2011-01-17 23:02:18 累计浏览 2,143 次
本机暂存

CSS3 target伪类是众多实用的CSS3特性中的一个。它用来匹配文档(页面)的URI中某个标志符的目标元素。具体来说,URI中的标志符通常会包含一个”#”字符,然后后面带有一个标志符名称,比如#respond,target就是用来匹配ID为respond的元素的。

现在在页面中,点击一个ID链接后,页面只会跳转到相应的位置,但是并不会有比较明显的UI标识,使用:target伪类可以像:hover等伪类一样对目标元素定义样式。

浏览器支持

因为我们在讨论CSS3,所以它现在被除了IE6-8以外的所有浏览器支持,但是IE9会支持这个伪类。这是相当遗憾的,但是这个现实并不影响你使用它。

如何使用:target

:target伪类和:hover、:link、:visited、:focus等伪类的用法是一样的:

1
2
3
4
selector:target{
color:red;
/*other styles*/
}

实例

让我们通过一个简单的例子来演示。比如我们在页面中常常会用到tab,之前我们要用脚本来实现,YUI、jQuery也都有这样的插件或者模块,但是现在我们用:target伪类就可以实现。

HTML结构:

1
2
3
4
5
6
7
8
9
10
11
<ul class="tabs">
	<li><a href="#tab1">标签一</a></li>
	<li><a href="#tab2">标签二</a></li>
	<li><a href="#tab3">标签三</a></li>
</ul>
<div id="tab1" class="tab_content">
<!--tabed content--></div>
<div id="tab2" class="tab_content">
<!--tabed content--></div>
<div id="tab3" class="tab_content">
<!--tabed content--></div>

CSS3代码:

1
2
3
4
5
6
7
8
/*layout styles*/
.tab_content {
	position: absolute;/*set content box as absolute*/
	/*other layout styles*/
}
#tab1:target, #tab2:target, #tab3:target {
	z-index: 1;
}

原理想必大家都看懂了,就是将tab内容框设置为绝对定位,然后通过:target伪类调整其z-index。

这里是个demo页面

具体用法就是这么简单,在实际项目中大家就可以随意发挥了 :)

扩展阅读

同分类推荐文章

  1. translateZ() (2026-06-25 21:18:56)
  2. translateY() (2026-06-25 21:17:56)
  3. translateX() (2026-06-25 21:16:01)

查看更多 前端 文章 →

建议继续学习

  1. css3:box-shadow边框阴影属性值详解 (累计阅读 27,110)
  2. 前端必须熟悉的10个CSS3属性 (累计阅读 7,719)
  3. 30个超棒的404错误页面 (累计阅读 7,301)
  4. 使用CSS3开启GPU硬件加速提升网站动画渲染性能 (累计阅读 6,635)
  5. css3-animation制作逐帧动画 (累计阅读 6,517)
  6. HTML5+CSS3 loading 效果收集 (累计阅读 6,438)
  7. Html5(css3)的瀑布流布局的实现 (累计阅读 5,359)
  8. 前端必须掌握30个CSS3选择器 (累计阅读 5,227)
  9. HoverDir响应鼠标移动方向的悬停效果插件 (累计阅读 5,110)
  10. [译]渐进增强:纯CSS聊天泡泡 (累计阅读 5,076)