css - 点击后出现的 Div(仅限 CSS3)

标签 css menu

我需要创建一个图标,在点击它后显示一个 div(菜单)。 CSS3 有可能吗? 这是针对移动版本的,我不需要 :hover 解决方案。

附言:如果唯一的解决方案是使用 Javascript 来实现,那么也可以链接到某些内容。

CSS

.nav{
    color: black;
    background-color:white;
    height: 5vh;
    width: 100vw;
}

.menu{
    color: black;
    background-color:green;
    height: 90vh;
    width: 90vw;
}

HTML

<div class="nav">
    <!-- Font Awesome Icon -->
    <i class="fa fa-bars"></i>
</div>

最佳答案

有几种不同的方法可以做到这一点,我相信它们都不是万无一失的,这里有一个使用 :focus 方法的例子。 http://fiddle.jshell.net/rpwe4kzy/4/

CSS

.hide{display: none;}
button:focus ~ .hide{ display: block;}

HTML

<div>
  <button tabindex="0">Show text</button>
  <p class="hide">Hidden type</p>
</div>

更多解决方案参见此处,https://tympanus.net/codrops/2012/12/17/css-click-events/

否则,如果您想使用 JS,我建议您使用一个简单的 jquery 函数。我猜你的元素中已经有 jquery,否则只需将它替换为 vanilla javascript 函数即可。

CSS

<style>
    .hidden{ display: none;}
</style>

HTML

<div>
    <button class="click-me">Click me</button>
    <p class="show-me hidden">
        Here is some text!
    </p>
</div>

JavaScript

<script>
    $( document ).ready(function() {
        $('.click-me').on('click', function(){
            $('.show-me').show();
        });
    });
</script>

这是 jQuery 方式的一个工作示例,https://jsfiddle.net/clintongreen/bu22op77/

关于css - 点击后出现的 Div(仅限 CSS3),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42981016/

相关文章:

javascript - 修复了移动应用程序 iframe 内的底部页脚

用于嵌套菜单项的 jQuery hasClass

css - 显示 :block breaking the float in IE6

c - 数组操作菜单 C 编程

javascript - .css jquery bordercolor 与 css 输入 :focus setting 混淆

jQuery mouseenter 导致div元素移动

css - div在移动版上保持div

javascript - 如何在居中的 div 中获取光标位置?

symfony1 - 如何在 Symfony 中创建动态菜单

javascript - 我想在 Electron js 中为关于应用程序(对于 windows)创建自定义子窗口