美文网首页前端基础学习
target伪类实现标签切换不起作用的问题

target伪类实现标签切换不起作用的问题

作者: 小雪洁 | 来源:发表于2020-02-28 12:37 被阅读0次

目的是希望实现点击标签切换相应的页,原始代码如下:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>移动端视图切换</title>
    </head>
    <style>
        *{
            padding: 0;
            margin: 0;
            box-sizing: border-box;
        }
        body{
            width: 100vw;
            height: 100vh;
            display: flex;
            flex-direction: column;
        }
        main{
            flex:1; /* flex:1应用在弹性元素上,main会自动撑开剩余空间 相当于flex-grow:1;flex-shrink:1;flex-basis:0; */
            position: relative;
        }
        nav{
            height: 10vh;
            display: flex;
            justify-content: space-evenly;
            align-items: center;
            background-color: steelblue;
        }
        nav a{
            font-size: 3em;
            text-transform: uppercase;
            color: white;
            opacity: .8;
            flex:1;
            text-decoration:none;
            text-align: center;
        }
        nav a:nth-child(2){
            border-left: solid #FFEFD5 3px;
            border-right: solid #FFEFD5 3px;
        }
        main>div{
            position: absolute;
            top:0;
            bottom: 0;
            width: 100%;
            height: 100%;
            background: #FFFFFF;
            font-size: 3em;
        }
        /* 问题在这里 */
        main>div:nth-child(1):target{
            background: #009f40;
        }
        main>div:nth-child(2):target{
            background: #DCAE3F;
        }
        main>div:nth-child(3):target{
            background: #93D1FF;
        }
    </style>
    <body>
        <main>
            <div id="home">home</div>
            <div id="video">video</div>
            <div id="live">live</div>
        </main>
        <nav>
            <a href="#home">Home</a>
            <a href="#video">Video</a>
            <a href="#live">Live</a>
        </nav>
    </body>
</html>
  • 问题: 实际上无论我怎么切换都只显示了live页;
  • 解决办法: 给伪类中的样式加上同样的z-index值;如下:
main>div:nth-child(1):target{
    background: #009f40;
    z-index: 1;
}
main>div:nth-child(2):target{
    background: #DCAE3F;
    z-index: 1;
}
main>div:nth-child(3):target{
    background: #93D1FF;
    z-index: 1;
}
  • 问题解决,可以实现点击切换页

相关文章

  • target伪类实现标签切换不起作用的问题

    目的是希望实现点击标签切换相应的页,原始代码如下: 问题: 实际上无论我怎么切换都只显示了live页; 解决办法:...

  • 大前端——知识点回顾(CSS)

    CSS 一、CSS3新特性锚伪类target 在点击完链接a标签后,锚链接目标元素就多了个伪类 :target:,...

  • 纯css实现tab切换

    1、利用a标签target,点击之后对应id的div会有 :target 伪类。 2、利用radio按钮和:che...

  • 移动web开发--- tabs栏详解之angular解析

    我们经常使用tabs栏切换 在这里我总结了一下tabs栏的切换方式。 1.使用伪类 :target 切换 这段代码...

  • css3-1

    之前学过的选择器 属性选择器 伪类选择器 结构选择器 结构伪类选择器 结构为类的的问题 empty target伪...

  • target伪类

  • C3选择器

    属性选择器 兄弟选择器 伪类选择器 伪类target 伪元素before,after 其他伪元素

  • css基础——2017.2.21

    css伪类 :link 伪类将应用于未被访问过的链接。IE6不兼容,解决此问题,直接使用a标签 :hover 伪类...

  • CSS3--过渡

    a标签的伪类选择器 什么是a标签的伪类选择器?a标签的伪类选择器是专门用来修改a标签不同状态的样式的 格式::li...

  • CSS3实现手风琴效果(学习笔记)

    CSS3实现手风琴效果,我们需要用到一个新属性 :target(目标伪类选择器) E:target 选择匹配E的所...

网友评论

    本文标题:target伪类实现标签切换不起作用的问题

    本文链接:https://www.haomeiwen.com/subject/jegkhhtx.html