html 超级简单的flexbox响应导航

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了html 超级简单的flexbox响应导航相关的知识,希望对你有一定的参考价值。

Super simple flexbox responsive nav
-----------------------------------


A [Pen](https://codepen.io/abalter/pen/NYLYYO) by [Ariel Balter](https://codepen.io/abalter) on [CodePen](https://codepen.io).

[License](https://codepen.io/abalter/pen/NYLYYO/license).
body {
  font-family: Arial, Helvetica, sans-serif;
}
#nav {
}
.nav-items {
  width: 100%;
  display: block;
}
.nav-items a {
  text-align: center;
  display: inline-block;
}
.nav-items a:hover {
  color: red;
}
#menu-toggle {
  display: none;
  margin: 0 auto;
}
@media screen and (max-width: 600px) {
  #nav {
    text-align: center;
  }
  .nav-items {
    display: none;
    margin: 1rem auto;
  }
  .nav-items a {
    display: block;
  }
  #menu-toggle {
    display: block;
  }
}

@media screen and (min-width: 601px) {
  .nav-items {
    display: inline-block;
  }
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.js"></script>
$('#menu-toggle').on('click', (e) =>
{
  console.log("menu-toggle");
  toggleCSS('.nav-items', 'display', 'block', 'none');
});

$('.nav-items a').on('click', (e) =>
{
  toggleCSS('.nav-items', 'display', 'block', 'none');
});

function toggleCSS(element, attribute, state1, state2)
{
  console.log(`element: ${element} attribute: ${attribute} state1: {state1} state2: ${state2}`);
  console.log($(element).css(attribute));

  $(element).css(attribute) == state1 ? $(element).css(attribute, state2) : $(element).css(attribute, state1);
  
  return $(element);
}

$(window).resize(() => {location = location; console.log($('.nav-items').css('display'))});
<div id="nav">
  <div id="menu-toggle"><button id="hamburger">MENU</button></div>
  <div class="nav-items">
    <a href="#home" class="active">Home</a>
    <a href="#news">News</a>
    <a href="#contact">Contact</a>
    <a href="#about">About</a>
  </div>
</div>

以上是关于html 超级简单的flexbox响应导航的主要内容,如果未能解决你的问题,请参考以下文章

css 超级简单的flexbox网格

使用 flexbox 时图像消失

如何在不使用 flexbox 等的情况下使表格网格响应 [重复]

html 使用flexbox响应youtube视频

FlexboxLayout 的一些基本介绍与基本用法

响应式 flexbox 和重新排序子子项