CSS3中target实现选项卡切换效果

:target是什么?

MDN是这样描述的::target

The :target pseudo-class represents the unique element, if any, with an id matching the fragment identifier of the URI of the document.
在document中,可以设置锚链接,举个粟子:

<a href="#tab">Test :target</a>
<a href="#tab2">Test 2:target</a>
<div id="tab">This is a tab.</div>
<div id="tab2">This is another tab.</div>

上面存在两个锚链接:#tab和t#ab2。当点击锚链接时,就会跳到对应的div,则::target就是给这些div用的。添加一下CSS

:target{
    color:red;
}
#tab:target::after{
    content:"tab1"
}

点击锚链接,对应链接的div的文本变成红色,另外,给#tab后面插入一个文本。(ps:关于content属性用法:CSS3的content属性详解)

应该大致明白了:target的含义了吧,如果不知道用,看看这篇文章:Using the :target selector

:target可以做什么

最简单的用处:利用:target实现选项卡切换。

HTML:

<div class="tab-control">
    <a href="#tab1">tab1</a>
    <a href="#tab2">tab2</a>
    <a href="#tab3">tab3</a>
</div>
<div class="tabs">
    <div id="tab1" class="tab">This is a tab1</div>
    <div id="tab2" class="tab">This is a tab2</div>
    <div id="tab3" class="tab">This is a tab3</div>
</div>
CSS:

.tab-control a{
    display:inline-block;
    text-decoration:none;
    color:#FFF;
    height:20px;
    width:40px;
    text-align:center;
    line-height:20px;
    background:rgba(70,121,189,0.75);
}
.tab-control a:hover{
    background:rgba(70,121,189,1);
}
.tabs{
    position:relative;
    border:1px solid red;
    height:200px;
    width:135px;
    overflow:hidden;
}
.tab{
    height:100%;
    width:100%;
}
:target{
    display:block;
}

当然,:target的功能不仅局限于此。隐藏元素、创建lightbox 等。MDN上给了很多个demo:more demo.
你自己也可以脑洞大开一下,哈哈。

浏览器支持

对于:target伪类,浏览器支持情况还是不错的。

 

时间: 2024-10-09 01:50:11

CSS3中target实现选项卡切换效果的相关文章

Android组件TabHost实现页面中多个选项卡切换效果

TabHost组件可以在界面中存放多个选项卡, 很多软件都使用了改组件进行设计. 一.基础知识 TabWidget : 该组件就是TabHost标签页中上部 或者 下部的按钮, 可以点击按钮切换选项卡; TabSpec : 代表了选项卡界面, 添加一个TabSpec即可添加到TabHost中; -- 创建选项卡 : newTabSpec(String tag), 创建一个选项卡; -- 添加选项卡 : addTab(tabSpec); 二.实例讲解 TabHost的基本使用,主要是layout的

基于jQuery实现仿百度首页选项卡切换效果_jquery

以下代码比较简单,所以没给大家附太多的注释,有问题欢迎给我留言,具体详情请看下文代码吧. 先给大家展示下效果图: 代码如下: <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>jQuery仿百度首页选项卡切换效果 - 何问起</title&

js中常用的Tab切换效果(推荐)_javascript技巧

如下所示: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>tab</title> <style> *{margin:0; padding:0; list-style:none;} .box{ width: 1000px; overflow: hidden; margin:100px auto

很棒的js Tab选项卡切换效果_javascript技巧

本文实例为大家分享了js Tab选项卡切换效果,供大家参考,具体内容如下 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>tab</title> <style> *{margin:0; padding:0; list-style:none;} .box{ width: 1000px; over

jQuery实现Tab选项卡切换效果简单演示_jquery

本文实例针对jQuery实现Tab选项卡切换效果进行了简单演示,完全是自己的思考实现过程,分享给大家供大家参考.具体如下: 起初我Html代码架子是这样的: <div class="tabs"> <ul> <li class="acss" data-box="#panel-1">标签1</li> <li class="bcss" data-box="#panel-

javascript实现tabs选项卡切换效果(自写原生js)_javascript技巧

现在的页面上有许多各种各样的页面效果,常用的有弹出层效果,无缝滚动效果,选项卡切换效果.今天分享一款自己用原生javascript写的选项卡切换效果,由于本人水平有限,如有问题请指出. 效果图如下:  html代码: 复制代码 代码如下: <!DOCTYPE HTML> <html lang="en-US"> <head> <meta charset="UTF-8"> <title>js-tabs</

JS基于myFocus库实现各种功能的tab选项卡切换效果_javascript技巧

本文实例讲述了JS基于myFocus库实现各种功能的tab选项卡切换效果.分享给大家供大家参考.具体如下: 这里介绍使用myFocus-tab实现各种功能的选项卡切换,有的是带有动画效果的,各款基于myFocus库制作的焦点图风格皮肤,可自行按需选择,myFocus焦点图库及皮肤可自由使用,保留作者相关信息即可,谢谢支持!^^ 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/js-myfocus-plug-tab-cha-nav-codes/ 具

Android多个TAB选项卡切换效果_Android

在前一期中,我们做了悬浮头部的两个tab切换和下拉刷新效果,后来项目中要求改成三个tab,当时就能估量了一下,如果从之前的改,也不是不可以,但是要互相记住的状态就太多了,很容易出现错误.就决定重新实现一下这个效果,为此先写了一个demo,这期间项目都已经又更新了两个版本了.demo还木有变成文章. 之前的版本中是采用了一个可以下拉刷新的listview,之后在listview中添加了两个头部,并且在该布局上的上面用了一个一模一样的切换tab,如果没有看过前面版本的,可以看看前一个版本,Listv

jQuery实现选项卡切换效果简单演示_jquery

本文实例讲述了jQuery实现选项卡切换效果简单演示代码.分享给大家供大家参考.具体如下: 运行效果图如下 一.主体程序 <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>选项卡</title> <link type="text/css" rel="stylesheet" href="c