关于伪类:target

什么是target伪类?先看一下解释:

  URL后面跟锚点#,指向文档内某个具体的元素。这个被链接的元素就是目标元素(target element),:target选择器用于选取当前活动的目标元素

举个例子:

<html>
    <a href="#target">点我</a>
    <div id="target"><div>
</html>

正常情况下,a标签里会跟一个url,但是在这里我们添加的不是url,而是一个锚点,当我们点击a时,本页面的url后面会添加上"#target",并且,id为target的div块就处于了当前活动状态


那么,这究竟有什么用呢?

其实这用处可多了,可以利用这种特性,不使用js就能实现一些交互效果

还是上面的代码,为其添加css

#target:not(:target) {
    display : none;
}

#target:target {
    display : block;
    width : 100px;
    height : 100px;
    border : 1px solid red;
}

如果我们不点击a元素,div元素就不显示,如果我们点击了a元素,div就显示成一个100*100,并且拥有红色边框的块;

如果了解了这种简单的用法,我们就可以用它实现一些稍微复杂一点的东西,比如可以实现一个自由切换的tab栏,或者一个可以进入和退出的导航栏

合理利用target伪类可以减少js的使用,不仅可以实现页面的优化,也可以让代码结构更加清晰

时间: 2024-08-29 16:54:36

关于伪类:target的相关文章

伪类target实现纯css模态框

今天看到一个纯css模态框,觉得是很牛呀 看了下用了target伪类, 一直不知道有这么神奇的伪类 .. 用法是这样的,给模态框一个id, <div id="pop" class="overlay"> 然后通过锚链接的方法 <a class="button" href="#pop">Click!</a> 点击之后,伪类的css就能发生作用了 .overlay:target { visibil

CSS3新增伪类--好用的:target

  问:如果让你实现下图,点击跳转后,让内容1增加一个背景颜色,你会怎么做呢? 可能很多小伙伴第一反应是用JS,给跳转绑定点击事件,然后用DOM获取到内容1,在给其添加css样式. 如果我跟你说用css来实现,你会不会一脸蒙蔽,然后想骂人.哈哈哈.其实用CSS3新增的伪类:target就能轻松搞定. W3C是这样定义的,如下图: 并且该伪类兼容性也很好,现代浏览器都支持,只有ie8及以下不支持. 有兴趣的小伙伴可以试试下面我写的demo <!DOCTYPE html> <html>

CSS3伪类和伪元素的特性和区别

本文转自:http://www.cnblogs.com/ihardcoder/p/5294927.html 今天复习css时发现::的css选择器,查了一下,知道有伪元素和伪类这件事,他们的区别是什么呢?很幸运已经有人总结好了! CSS3伪类和伪元素的特性和区别 前端er们大都或多或少地接触过CSS伪类和伪元素,比如最常见的:focus,:hover以及<a>标签的:link.visited等,伪元素较常见的比如:before.:after等. 其实上面提到的这些伪类和伪元素都是CSS1和CS

Css3之高级-1 Css复杂选择器(兄弟选择器 、属性选择器、伪类选择器、伪元素选择器)

一.兄弟选择器 相邻兄弟选择器 - 相邻兄弟选择器匹配指定元素的相邻兄弟元素 - 如果需要选择紧接在另一个元素后的元素,而且二者有相同的父元素,可以使用相邻兄弟选择器 - 使用加号(+)作为结合符 通用兄弟选择器 - 通用兄弟选择器匹配某元素后面的所有兄弟元素 - 使用符号(~)作为结合符,即 element1~element2 - 两种元素必须拥有相同的父元素,但是element2不必直接紧随element1 二.属性选择器 属性选择器 - 属性选择器能够将元素附带的属性用于选择器中,从而对带

css中伪类和伪元素的区别

转载:http://www.cnblogs.com/ihardcoder/p/5294927.html CSS3伪类和伪元素的特性和区别 前端er们大都或多或少地接触过CSS伪类和伪元素,比如最常见的:focus,:hover以及<a>标签的:link.visited等,伪元素较常见的比如:before.:after等. 其实上面提到的这些伪类和伪元素都是CSS1和CSS2中的概念,CSS1和CSS2中对伪类的伪元素的区别比较模糊,甚至经常有同行将:before.:after称为伪类.CSS3

css3-伪元素与伪类

伪元素用于定位文档中包含的文本,但是它表示DOM外部的某种文档结构 伪类: 伪类存在的意义是为了通过选择器找到那些不存在于DOM树中的信息以及不能被常规CSS选择器获取到的信息.简单来说,获取不存在与DOM树中的信息.比如<a>标签的:link.visited等,这些信息不存在于DOM树结构中,只能通过CSS选择器来获取:获取不能被常规CSS选择器获取的信息.比如伪类:target,它的作用是匹配文档(页面)的URI中某个标志符的目标元素. 常见的伪类和伪元素 下面看一下伪元素中最常用的bef

CSS基础学习记录——伪类和伪元素

定义 伪类选择器:伪类存在的意义是为了通过选择器找到那些不存在与DOM树中的信息以及不能被常规CSS选择器获取到的信息.(CSS3中的定义) 不存在与DOM树中的信息,如<a>标签的 :link.:visited.:hover.:focus.:active.这些信息不存在与DOM树结构中,只能通过CSS选择器来获取: 不能被常规CSS选择器获取到的信息,如:first-child,选择元素的第一个子元素,这个功能无法用常规选择器实现,但是可以用js实现,不过和:first-child相比实在是

CSS3 target伪类简介

CSS3 target伪类是众多实用的CSS3特性中的一个.它用来匹配文档(页面)的URI中某个标志符的目标元素.具体来说,URI中的标志符通常会包含一个”#”字符,然后后面带有一个标志符名称,比如#respond,target就是用来匹配ID为respond的元素的. 现在在页面中,点击一个ID链接后,页面只会跳转到相应的位置,但是并不会有比较明显的UI标识,使用:target伪类可以像:hover等伪类一样对目标元素定义样式.

CSS3 :target伪类实现Tab切换效果

用:target伪类实现Tab切换效果真的非常简单!简单到什么程度呢?它只需要下面这些代码. style.css: .song-info { position: absolute; background: #fff; } #song-info:target, #song-lyricCN:target, #song-lyricEN:target { z-index: 1; } html代码: <div class="song-nav"> <ul class="