【问题标题】:How to fix the tabs properly using css?如何使用 css 正确修复选项卡?
【发布时间】:2020-11-05 19:37:35
【问题描述】:

您好,我正在尝试将选项卡集成到我的项目中,这里 css 很好,但是在单击第二个选项卡后它不可见,并且按钮单击也没有发生。

这是我尝试过的代码:Stackblitz

任何答案都会有帮助,谢谢。

【问题讨论】:

    标签: html css angular


    【解决方案1】:

    对于“圆形”活动背景,您在ul 上使用:after 伪元素。为什么要这么做 ?你想为它制作动画(将它从一个活动的li 移动到另一个)?

    如果没有,只需添加 'after' 或为活动元素添加背景。

    请参阅 Stackblitz 并告诉我您是否正在寻找。

    附:选项卡有效,所以我不知道您所说的“按钮点击没有发生”是什么意思。

    【讨论】:

    • 这很好,但是在单击另一个选项卡后它消失并重新出现,这不应该发生任何修复我之前得到了这个解决方案。
    • 它'消失'?你的意思是从蓝色变成白色需要一些时间?这就是应用在tab-slider--trigger 上的过渡效果@
    • 是的,我不希望这影响任何解决方案。
    • :))) 可能会删除应用于tab-slider--trigger 的过渡? :)
    【解决方案2】:

    你错了两个 css 属性我改了:

    .tab-slider--trigger.active {
        color: #fff;
        background-color: #345F90; // add only when active
    }
    .tab-slider--trigger {
        background-color:white; // add when is not active white
    }
    
    .tab-slider--tabs:after {
        background: #345F90; // delete because is wrong
    }
    

    完整的css文件:

    .container {
        width: 75%;
        margin: 3rem auto;
    }
    
    h2 {
        color: #345F90;
        font-size: 24px;
        line-height: 1.25;
        font-family: "Roboto Slab", serif;
        margin-top: 20px;
        margin-bottom: 20px;
    }
    
    .tab-slider--nav {
        width: 100%;
        float: left;
        margin-bottom: 20px;
    }
    
    .tab-slider--tabs {
        display: block;
        float: left;
        margin: 0;
        padding: 0;
        list-style: none;
        position: relative;
        border-radius: 35px;
        overflow: hidden;
        background: #fff;
        height: 35px;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
    }
    
    .tab-slider--tabs:after {
        content: "";
        width: 50%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        -webkit-transition: all 250ms ease-in-out;
        transition: all 250ms ease-in-out;
        border-radius: 35px;
    }
    
    .tab-slider--tabs.slide:after {
        left: 50%;
    }
    
    .tab-slider--trigger {
        font-size: 12px;
        line-height: 1;
        font-weight: bold;
        color: #345F90;
        background-color: rgb(255, 255, 255);
        text-transform: uppercase;
        text-align: center;
        padding: 11px 20px;
        position: relative;
        z-index: 2;
        cursor: pointer;
        display: inline-block;
        -webkit-transition: color 250ms ease-in-out;
        transition: color 250ms ease-in-out;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
    }
    
    .tab-slider--trigger.active {
        color: #fff;
        background-color: #345F90;
    }
    
    .tab-slider--body {
        margin-bottom: 20px;
    }

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-06-23
      • 2010-12-23
      • 2019-08-17
      • 2013-02-06
      • 1970-01-01
      相关资源
      最近更新 更多