css - 将导航选项卡添加到 Tailwind CSS 导航栏

标签 css tailwind-css

所以我设计了这个顺风 CSS 导航栏,但是我在向它添加标签时遇到了麻烦。这是我的导航栏的链接。希望有人可以帮助添加一些下拉菜单,以便我可以在我的元素中使用它。我尝试了所有可能的方法,但似乎很难。我什至尝试使用其他组件。
无论如何,我无法让这个导航栏正常工作。我需要将导航栏从静态模式更改为响应模式,但目前无法正常工作。任何意见,将不胜感激!!

new Vue({
  el: "#app",
  data() {
            return {
                open: false,
            }
      },
      methods: {
        toggle() {
            this.open = !this.open
        }
    }
})
<link href="https://cdnjs.cloudflare.com/ajax/libs/tailwindcss/0.7.4/tailwind.min.css" rel="stylesheet"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script>


<header class="font-sans antialiased" id="app">
    <div class="flex items-center justify-between flex-wrap bg-grey-dark p-6">
      <div class="flex">
        <img src="src/assets/boy.svg" alt="" class="h-8 w-8">
        <a href="#" class="no-underline text-white text-bold mt-2"><span class="font-semibold text-xl tracking-tight">ExampleCss</span></a>
      </div>
      <div class="block sm:hidden">
        <button @click="toggle" class="flex items-center px-3 py-2 border rounded text-grey-dark-lighter border-grey-dark-light hover:text-white hover:border-white">
          <svg class="fill-current h-3 w-3" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><title>Menu</title><path d="M0 3h20v2H0V3zm0 6h20v2H0V9zm0 6h20v2H0v-2z"/></svg>
        </button>
      </div>
      <div :class="open ? 'block': 'hidden'" class="w-full flex-grow sm:flex sm:items-center sm:w-auto">
        <div class="text-sm sm:hidden">
          <a href="#" class="no-underline block mt-4 sm:inline-block sm:mt-0 text-white hover:text-white mr-8">
            Home
          </a>
          <a href="#" class="no-underline block mt-4 sm:inline-block sm:mt-0 text-white hover:text-white mr-8">
            About
          </a>
          <a href="#" class="no-underline block mt-4 sm:inline-block sm:mt-0 text-white hover:text-white mr-8">
            Expertise
          </a>
          <a href="#" class="no-underline block mt-4 sm:inline-block sm:mt-0 text-white hover:text-white mr-8">
            Academia
          </a>
          <a href="#" class="no-underline block mt-4 sm:inline-block sm:mt-0 text-white hover:text-white mr-8">
            Portfolio
          </a>
          <a href="#" class="no-underline block mt-4 sm:inline-block sm:mt-0 text-white hover:text-white mr-8">
            Blog
          </a>
          <a href="#" class="no-underline block mt-4 sm:inline-block sm:mt-0 text-white hover:text-white mr-8">
            Contact
          </a>
          <div class="flex">
            <div>
              <a href="#" class="no-underline inline-block text-sm px-4 py-2 leading-none border rounded text-white border-white hover:border-transparent hover:text-gray hover:bg-white mt-4 sm:mt-0 mr-2">Register</a>
            </div>
            <div>
              <a href="#" class="no-underline inline-block text-sm px-4 py-2 leading-none border rounded text-white border-white hover:border-transparent hover:text-gray hover:bg-white mt-4 sm:mt-0">Login</a>
            </div>
          </div>
        </div>
      </div>
      <div class="hidden w-full block md:flex md:w-auto">
        <div>
          <a href="#" class="no-underline inline-block text-sm px-4 py-2 leading-none border rounded text-white border-white hover:border-transparent hover:text-gray hover:bg-white mt-4 sm:mt-0 mr-2">Register</a>
        </div>
        <div>
          <a href="#" class="no-underline inline-block text-sm px-4 py-2 leading-none border rounded text-white border-white hover:border-transparent hover:text-gray hover:bg-white mt-4 sm:mt-0">Login</a>
        </div>
      </div>
    </div>
    <nav class="bg-grey-dark sm:block p-6" :class="open ? 'hidden': 'hidden'">
      <div class="w-full flex-grow sm:flex sm:items-center sm:w-auto">
        <div class="flex justify-center items-center text-sm sm:flex-grow uppercase">
          <a href="#" class="no-underline block mt-4 sm:inline-block sm:mt-0 text-white hover:text-white mr-8">
            Home
          </a>
          <a href="#" class="no-underline block mt-4 sm:inline-block sm:mt-0 text-white hover:text-white mr-8">
            About
          </a>
          <a href="#" class="no-underline block mt-4 sm:inline-block sm:mt-0 text-white hover:text-white mr-8">
            Expertise
          </a>
          <a href="#" class="no-underline block mt-4 sm:inline-block sm:mt-0 text-white hover:text-white mr-8">
            Academia
          </a>
          <a href="#" class="no-underline block mt-4 sm:inline-block sm:mt-0 text-white hover:text-white mr-8">
            Portfolio
          </a>
          <a href="#" class="no-underline block mt-4 sm:inline-block sm:mt-0 text-white hover:text-white mr-8">
            Blog
          </a>
          <a href="#" class="no-underline block mt-4 sm:inline-block sm:mt-0 text-white hover:text-white mr-8">
            Contact
          </a>
        </div>
      </div>
    </nav>
  </header>

最佳答案

我已经查看了您的代码并找到了一个关于下拉菜单的建议,请在您的页面中替换我建议的代码,并希望下拉菜单也适用于您的菜单。

HTML

<link href="https://cdnjs.cloudflare.com/ajax/libs/tailwindcss/0.7.4/tailwind.min.css" rel="stylesheet"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script>


<header class="font-sans antialiased" id="app">
    <div class="flex items-center justify-between flex-wrap bg-grey-dark p-6">
      <div class="flex">
        <img src="src/assets/boy.svg" alt="" class="h-8 w-8">
        <a href="#" class="no-underline text-white text-bold mt-2"><span class="font-semibold text-xl tracking-tight">ExampleCss</span></a>
      </div>
      <div class="block sm:hidden">
        <button @click="toggle" class="flex items-center px-3 py-2 border rounded text-grey-dark-lighter border-grey-dark-light hover:text-white hover:border-white">
          <svg class="fill-current h-3 w-3" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"><title>Menu</title><path d="M0 3h20v2H0V3zm0 6h20v2H0V9zm0 6h20v2H0v-2z"/></svg>
        </button>
      </div>
      <div :class="open ? 'block': 'hidden'" class="w-full flex-grow sm:flex sm:items-center sm:w-auto">
        <div class="text-sm sm:hidden">
          <a href="#" class="no-underline block mt-4 sm:inline-block sm:mt-0 text-white hover:text-white mr-8">
            Home
          </a>
          <a href="#" class="no-underline block mt-4 sm:inline-block sm:mt-0 text-white hover:text-white mr-8">
            About
          </a>
          <a href="#" class="no-underline block mt-4 sm:inline-block sm:mt-0 text-white hover:text-white mr-8">
            Expertise
          </a>
          <a href="#" class="no-underline block mt-4 sm:inline-block sm:mt-0 text-white hover:text-white mr-8">
            Academia
          </a>
          <a href="#" class="no-underline block mt-4 sm:inline-block sm:mt-0 text-white hover:text-white mr-8">
            Portfolio
          </a>
          <a href="#" class="no-underline block mt-4 sm:inline-block sm:mt-0 text-white hover:text-white mr-8">
            Blog
          </a>
          <a href="#" class="no-underline block mt-4 sm:inline-block sm:mt-0 text-white hover:text-white mr-8">
            Contact
          </a>
          <div class="flex">
            <div>
              <a href="#" class="no-underline inline-block text-sm px-4 py-2 leading-none border rounded text-white border-white hover:border-transparent hover:text-gray hover:bg-white mt-4 sm:mt-0 mr-2">Register</a>
            </div>
            <div>
              <a href="#" class="no-underline inline-block text-sm px-4 py-2 leading-none border rounded text-white border-white hover:border-transparent hover:text-gray hover:bg-white mt-4 sm:mt-0">Login</a>
            </div>
          </div>
        </div>
      </div>
      <div class="hidden w-full block md:flex md:w-auto">
        <div>
          <a href="#" class="no-underline inline-block text-sm px-4 py-2 leading-none border rounded text-white border-white hover:border-transparent hover:text-gray hover:bg-white mt-4 sm:mt-0 mr-2">Register</a>
        </div>
        <div>
          <a href="#" class="no-underline inline-block text-sm px-4 py-2 leading-none border rounded text-white border-white hover:border-transparent hover:text-gray hover:bg-white mt-4 sm:mt-0">Login</a>
        </div>
      </div>
    </div>
    <nav class="bg-grey-dark sm:block p-6" :class="open ? 'hidden': 'hidden'">
      <div class="w-full flex-grow sm:flex sm:items-center sm:w-auto">
        <div class="flex justify-center items-center text-sm sm:flex-grow uppercase">
          <a href="#" class="no-underline block mt-4 sm:inline-block sm:mt-0 text-white hover:text-white mr-8">
            Home
          </a>
          <div id="app" class="p-6 font-sans leading-normal">
  <dropdown-link>
    <span slot="link" class="appearance-none flex items-center inline-block text-white font-medium px-4 py-2 rounded">
      <span class="mr-1">Dropdown</span>
      <svg class="h-4 w-4 fill-current" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20">
        <path d="M9.293 12.95l.707.707L15.657 8l-1.414-1.414L10 10.828 5.757 6.586 4.343 8z" />
      </svg>
    </span>
    <div slot="dropdown" class="bg-white shadow rounded border overflow-hidden">
      <a href="#" class="no-underline block px-4 py-3 border-b text-grey-darkest bg-white hover:text-white hover:bg-blue whitespace-no-wrap">Action</a>
      <a href="#" class="no-underline block px-4 py-3 border-b text-grey-darkest bg-white hover:text-white hover:bg-blue whitespace-no-wrap">Another action</a>
      <a href="#" class="no-underline block px-4 py-3 border-b text-grey-darkest bg-white hover:text-white hover:bg-blue whitespace-no-wrap">Something else here</a>
    </div>
  </dropdown-link>
</div>

<script type="text/x-template" id="dropdown-link-template">
  <div class="relative">
    <div role="button" class="inline-block select-none" @click="open = !open">
      <slot name="link"></slot>
    </div>
    <div class="absolute pin-l mt-px" v-show="open">
      <slot name="dropdown"></slot>
    </div>
  </div>
</script>
<a href="#" class="no-underline block mt-4 sm:inline-block sm:mt-0 text-white hover:text-white mr-8">
            About
          </a>
          <a href="#" class="no-underline block mt-4 sm:inline-block sm:mt-0 text-white hover:text-white mr-8">
            Expertise
          </a>
          <a href="#" class="no-underline block mt-4 sm:inline-block sm:mt-0 text-white hover:text-white mr-8">
            Academia
          </a>
          <a href="#" class="no-underline block mt-4 sm:inline-block sm:mt-0 text-white hover:text-white mr-8">
            Portfolio
          </a>
          <a href="#" class="no-underline block mt-4 sm:inline-block sm:mt-0 text-white hover:text-white mr-8">
            Blog
          </a>
          <a href="#" class="no-underline block mt-4 sm:inline-block sm:mt-0 text-white hover:text-white mr-8">
            Contact
          </a>

        </div>
      </div>
    </nav>
  </header>

Vue.js
 Vue.component('dropdown-link', {
  template: '#dropdown-link-template',
  data() {
    return {
      open: false
    }
  }
})

var app = new Vue({
  el: '#app'
}) 

enter image description here

enter link description here

关于css - 将导航选项卡添加到 Tailwind CSS 导航栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55321548/

相关文章:

css - 编译不同 SCSS 文件的 Gulp 组合任务

HTML 导航菜单背景颜色

html - 当浏览器响应时强制第二个 Div 折叠到第一个 Div 下面

html - 我将如何移动这个 float 的 div?

nuxt.js - Tailwind 自定义颜色默认不起作用

html - 在 Vue.js 中正确格式化 <pre> 和 <code> block

html - 如何创建没有屏幕大小一半的填充/边距的 Bootstrap 列?

javascript - 选项卡内的轮播

reactjs - Lottie 动画越过头球

npm - 如何将 vite.config.js 文件添加到我的项目中?