search results:

    • Standard
    • React
    Pricing Learn Community
    • + D
    • Light
    • Dark
    • System
    logo TW Elements
    • Getting started
      • Quick start
      • Tutorials
      • Design system
      • Local installation
      • Optimization
      • Dark mode
      • Theming
      • Changelog
      • Migrating to v2
      • Internationalization guide
      • Class customization
      • Icons Integration
    • CommercialNew
      • Pricing
      • License
      • Installation
      • Git & repository
      • Premium Support
    • Integrations
      • Angular
      • ASP.NET
      • Django
      • Express
      • Laravel
      • Next
      • Nuxt
      • Qwik
      • React
      • Remix
      • Solid
      • Svelte
      • SvelteKit
      • Vue
    • Content & styles
      • Animations
      • Animations Extended
      • Colors
      • Dividers
      • Figures
      • Headings
      • Hover effects
      • Icons
      • Images
      • Mask
      • Shadows
      • Typography
    • Navigation
      • Breadcrumbs
      • Footer
      • Headers
      • Mega menu
      • Navbar
      • Offcanvas
      • Pagination
      • Pills
      • Scrollspy
      • Sidenav
      • Tabs
    • Components
      • Accordion
      • Alerts
      • Avatar
      • Badges
      • Button group
      • Buttons
      • Cards
      • Carousel
      • Chips
      • Collapse
      • Dropdown
      • Gallery
      • Jumbotron
      • Lightbox
      • Link
      • List group
      • Modal
      • Notifications
      • Paragraphs
      • Placeholders
      • Popconfirm
      • Popover
      • Progress
      • Rating
      • Scroll back to top button
      • Social buttons
      • Spinners
      • Stepper
      • Testimonials
      • Timeline
      • Toast
      • Tooltip
      • Video
      • Video carousel
    • Forms
      • Autocomplete
      • Checkbox
      • Datepicker
      • Datetimepicker
      • File input
      • Form templates
      • Input Group
      • Inputs
      • Login form
      • Multi range slider
      • Radio
      • Range
      • Registration form
      • Search
      • Select
      • Switch
      • Textarea
      • Timepicker
      • Validation
    • Data
      • Charts
      • Charts advanced
      • Datatables
      • Tables
    • Methods
      • Clipboard
      • Infinite scroll
      • Lazy loading
      • Loading management
      • Ripple
      • Scrollbar
      • Smooth scroll
      • Sticky
      • Touch
    • Design Blocks
      • Admin Charts
      • Admin Complex
      • Admin Forms
      • Admin Maps
      • Admin Navigation
      • Admin tables
      • Banners
      • Contact
      • Content
      • CTA
      • FAQ
      • Features
      • Headers
      • Hero / Intro sections
      • Logo clouds
      • Mega menu
      • News
      • Newsletter
      • Pricing
      • Projects
      • Stats
      • Stats admin
      • Team
      • Testimonials
    • Tools
      • Button generator
      • Card generator
      • Flexbox generator
      • Footer generator
      • Form builder
      • Grid generator
      • Icon generator
      • Instagram Filters generator
      • Logo generator
      • Table generator
      • Typography generator
    • Coming Soon
      • Angular
      • Builder
      • Templates
      • Vue
    • Resources
      • Playground
      • YouTube Channel
      • Private FB Group
      • Newsletter
      • UI Design course New
      • UI / UX tips
    • Overview
    • API

    Tabs

    Tailwind CSS Tabs

    Responsive Tabs built with Tailwind CSS. Learn how to use tabs to create content that can be hidden & activated onclick, examples like switch, vertical & more.

    Required ES init: Tab *
    * UMD autoinits are enabled by default. This means that you don't need to initialize the component manually. However if you are using TW Elements ES format then you should pass the required components to the initTWE method.

    Basic example

    With the basic example od tabs component you can navigate between groups of content that are related and at the same level of hierarchy.

    • Home
    • Profile
    • Messages
    • Contact
    Tab 1 content
    Tab 2 content
    Tab 3 content
    Tab 4 content
    • HTML
    • javascript
            
                
          <!--Tabs navigation-->
          <ul
            class="mb-5 flex list-none flex-row flex-wrap border-b-0 ps-0"
            role="tablist"
            data-twe-nav-ref>
            <li role="presentation">
              <a
                href="#tabs-home"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-primary data-[twe-nav-active]:text-primary dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-primary"
                data-twe-toggle="pill"
                data-twe-target="#tabs-home"
                data-twe-nav-active
                role="tab"
                aria-controls="tabs-home"
                aria-selected="true"
                >Home</a
              >
            </li>
            <li role="presentation">
              <a
                href="#tabs-profile"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-primary data-[twe-nav-active]:text-primary dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-primary"
                data-twe-toggle="pill"
                data-twe-target="#tabs-profile"
                role="tab"
                aria-controls="tabs-profile"
                aria-selected="false"
                >Profile</a
              >
            </li>
            <li role="presentation">
              <a
                href="#tabs-messages"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-primary data-[twe-nav-active]:text-primary dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-primary"
                data-twe-toggle="pill"
                data-twe-target="#tabs-messages"
                role="tab"
                aria-controls="tabs-messages"
                aria-selected="false"
                >Messages</a
              >
            </li>
            <li role="presentation">
              <a
                href="#tabs-contact"
                class="disabled pointer-events-none my-2 block border-x-0 border-b-2 border-t-0 border-transparent bg-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-400 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent dark:text-neutral-600"
                data-twe-toggle="pill"
                data-twe-target="#tabs-contact"
                role="tab"
                aria-controls="tabs-contact"
                aria-selected="false"
                >Contact</a
              >
            </li>
          </ul>
    
          <!--Tabs content-->
          <div class="mb-6">
            <div
              class="hidden opacity-100 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-home"
              role="tabpanel"
              aria-labelledby="tabs-home-tab"
              data-twe-tab-active>
              Tab 1 content
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-profile"
              role="tabpanel"
              aria-labelledby="tabs-profile-tab">
              Tab 2 content
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-messages"
              role="tabpanel"
              aria-labelledby="tabs-profile-tab">
              Tab 3 content
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-contact"
              role="tabpanel"
              aria-labelledby="tabs-contact-tab">
              Tab 4 content
            </div>
          </div>
          
            
        
            
                
          // Initialization for ES Users
          import {
            Tab,
            initTWE,
          } from "tw-elements";
          
          initTWE({ Tab });
          
            
        

    Hey there 👋 we're excited about TW elements and want to see it grow! If you enjoy it, help the project grow by sharing it with your peers. Every share counts, thank you!

    Fill

    Stretch the tab list to fit the container.

    • Home
    • Profile
    • Messages
    • Contact
    Tab 1 content
    Tab 2 content
    Tab 3 content
    Tab 4 content
    • HTML
    • javascript
            
                
          <!--Tabs navigation-->
          <ul
            class="mb-5 flex list-none flex-row flex-wrap border-b-0 ps-0"
            role="tablist"
            data-twe-nav-ref>
            <li role="presentation" class="flex-auto text-center">
              <a
                href="#tabs-home01"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-primary data-[twe-nav-active]:text-primary dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-primary"
                data-twe-toggle="pill"
                data-twe-target="#tabs-home01"
                data-twe-nav-active
                role="tab"
                aria-controls="tabs-home01"
                aria-selected="true"
                >Home</a
              >
            </li>
            <li role="presentation" class="flex-auto text-center">
              <a
                href="#tabs-profile01"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-primary data-[twe-nav-active]:text-primary dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-primary"
                data-twe-toggle="pill"
                data-twe-target="#tabs-profile01"
                role="tab"
                aria-controls="tabs-profile01"
                aria-selected="false"
                >Profile</a
              >
            </li>
            <li role="presentation" class="flex-auto text-center">
              <a
                href="#tabs-messages01"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-primary data-[twe-nav-active]:text-primary dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-primary"
                data-twe-toggle="pill"
                data-twe-target="#tabs-messages01"
                role="tab"
                aria-controls="tabs-messages01"
                aria-selected="false"
                >Messages</a
              >
            </li>
            <li role="presentation" class="flex-auto text-center">
              <a
                href="#tabs-contact01"
                class="disabled pointer-events-none my-2 block border-x-0 border-b-2 border-t-0 border-transparent bg-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-400 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent dark:text-neutral-600"
                data-twe-toggle="pill"
                data-twe-target="#tabs-contact01"
                role="tab"
                aria-controls="tabs-contact01"
                aria-selected="false"
                >Contact</a
              >
            </li>
          </ul>
    
          <!--Tabs content-->
          <div class="mb-6">
            <div
              class="hidden opacity-100 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-home01"
              role="tabpanel"
              aria-labelledby="tabs-home-tab01"
              data-twe-tab-active>
              Tab 1 content
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-profile01"
              role="tabpanel"
              aria-labelledby="tabs-profile-tab01">
              Tab 2 content
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-messages01"
              role="tabpanel"
              aria-labelledby="tabs-profile-tab01">
              Tab 3 content
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-contact01"
              role="tabpanel"
              aria-labelledby="tabs-contact-tab01">
              Tab 4 content
            </div>
          </div>
          
            
        
            
                
          // Initialization for ES Users
          import {
            Tab,
            initTWE,
          } from "tw-elements";
          
          initTWE({ Tab });
          
            
        

    Justify

    Arrange the tabs in a grid to stretch the entire width of the parent element.

    • Home
    • Profile
    • Messages
    • Contact
    Tab 1 content
    Tab 2 content
    Tab 3 content
    Tab 4 content
    • HTML
    • javascript
            
                
          <!--Tabs navigation-->
          <ul
            class="mb-5 flex list-none flex-row flex-wrap border-b-0 ps-0"
            role="tablist"
            data-twe-nav-ref>
            <li role="presentation" class="flex-grow basis-0 text-center">
              <a
                href="#tabs-home02"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-primary data-[twe-nav-active]:text-primary dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-primary"
                data-twe-toggle="pill"
                data-twe-target="#tabs-home02"
                data-twe-nav-active
                role="tab"
                aria-controls="tabs-home02"
                aria-selected="true"
                >Home</a
              >
            </li>
            <li role="presentation" class="flex-grow basis-0 text-center">
              <a
                href="#tabs-profile02"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-primary data-[twe-nav-active]:text-primary dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-primary"
                data-twe-toggle="pill"
                data-twe-target="#tabs-profile02"
                role="tab"
                aria-controls="tabs-profile02"
                aria-selected="false"
                >Profile</a
              >
            </li>
            <li role="presentation" class="flex-grow basis-0 text-center">
              <a
                href="#tabs-messages02"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-primary data-[twe-nav-active]:text-primary dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-primary"
                data-twe-toggle="pill"
                data-twe-target="#tabs-messages02"
                role="tab"
                aria-controls="tabs-messages02"
                aria-selected="false"
                >Messages</a
              >
            </li>
            <li role="presentation" class="flex-grow basis-0 text-center">
              <a
                href="#tabs-contact02"
                class="disabled pointer-events-none my-2 block border-x-0 border-b-2 border-t-0 border-transparent bg-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-400 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent dark:text-neutral-600"
                data-twe-toggle="pill"
                data-twe-target="#tabs-contact02"
                role="tab"
                aria-controls="tabs-contact02"
                aria-selected="false"
                >Contact</a
              >
            </li>
          </ul>
    
          <!--Tabs content-->
          <div class="mb-6">
            <div
              class="hidden opacity-100 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-home02"
              role="tabpanel"
              aria-labelledby="tabs-home-tab02"
              data-twe-tab-active>
              Tab 1 content
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-profile02"
              role="tabpanel"
              aria-labelledby="tabs-profile-tab02">
              Tab 2 content
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-messages02"
              role="tabpanel"
              aria-labelledby="tabs-profile-tab02">
              Tab 3 content
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-contact02"
              role="tabpanel"
              aria-labelledby="tabs-contact-tab02">
              Tab 4 content
            </div>
          </div>
          
            
        
            
                
          // Initialization for ES Users
          import {
            Tab,
            initTWE,
          } from "tw-elements";
          
          initTWE({ Tab });
          
            
        

    Vertical

    Make vertical tabs instead of default horizontal ones.

    • Home
    • Profile
    • Messages
    • Contact
    Tab 1 content
    Tab 2 content
    Tab 3 content
    Tab 4 content
    • HTML
    • javascript
            
                
          <!--Tabs navigation-->
          <ul
            class="me-4 flex list-none flex-col flex-wrap ps-0"
            role="tablist"
            data-twe-nav-ref>
            <li role="presentation" class="flex-grow text-center">
              <a
                href="#tabs-home03"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-primary data-[twe-nav-active]:text-primary dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-primary"
                data-twe-toggle="pill"
                data-twe-target="#tabs-home03"
                data-twe-nav-active
                role="tab"
                aria-controls="tabs-home03"
                aria-selected="true"
                >Home</a
              >
            </li>
            <li role="presentation" class="flex-grow text-center">
              <a
                href="#tabs-profile03"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-primary data-[twe-nav-active]:text-primary dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-primary"
                data-twe-toggle="pill"
                data-twe-target="#tabs-profile03"
                role="tab"
                aria-controls="tabs-profile03"
                aria-selected="false"
                >Profile</a
              >
            </li>
            <li role="presentation" class="flex-grow text-center">
              <a
                href="#tabs-messages03"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-primary data-[twe-nav-active]:text-primary dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-primary"
                data-twe-toggle="pill"
                data-twe-target="#tabs-messages03"
                role="tab"
                aria-controls="tabs-messages03"
                aria-selected="false"
                >Messages</a
              >
            </li>
            <li role="presentation" class="flex-grow text-center">
              <a
                href="#tabs-contact03"
                class="disabled pointer-events-none my-2 block border-x-0 border-b-2 border-t-0 border-transparent bg-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-400 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent dark:text-neutral-600"
                data-twe-toggle="pill"
                data-twe-target="#tabs-contact03"
                role="tab"
                aria-controls="tabs-contact03"
                aria-selected="false"
                >Contact</a
              >
            </li>
          </ul>
    
          <!--Tabs content-->
          <div class="my-2">
            <div
              class="hidden opacity-100 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-home03"
              role="tabpanel"
              aria-labelledby="tabs-home-tab03"
              data-twe-tab-active>
              Tab 1 content
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-profile03"
              role="tabpanel"
              aria-labelledby="tabs-profile-tab03">
              Tab 2 content
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-messages03"
              role="tabpanel"
              aria-labelledby="tabs-profile-tab03">
              Tab 3 content
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-contact03"
              role="tabpanel"
              aria-labelledby="tabs-contact-tab03">
              Tab 4 content
            </div>
          </div>
          
            
        
            
                
          // Initialization for ES Users
          import {
            Tab,
            initTWE,
          } from "tw-elements";
          
          initTWE({ Tab });
          
            
        

    Pills with buttons

    You can also use buttons instead of tabs to change the visible content.

    • Home
    • Profile
    • Messages
    Tab 1 content button version
    Tab 2 content button version
    Tab 3 content button version
    • HTML
    • javascript
            
                
          <!--Tabs navigation-->
          <ul
            class="mb-4 flex list-none flex-row flex-wrap border-b-0 ps-0"
            id="tabs-tab3"
            role="tablist"
            data-twe-nav-ref>
            <li role="presentation">
              <a
                href="#tabs-home3"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-primary data-[twe-nav-active]:text-primary dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-primary"
                id="tabs-home-tab3"
                data-twe-toggle="pill"
                data-twe-target="#tabs-home3"
                data-twe-nav-active
                role="tab"
                aria-controls="tabs-home3"
                aria-selected="true"
                >Home</a
              >
            </li>
            <li role="presentation">
              <a
                href="#tabs-profile3"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-primary data-[twe-nav-active]:text-primary dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-primary"
                id="tabs-profile-tab3"
                data-twe-toggle="pill"
                data-twe-target="#tabs-profile3"
                role="tab"
                aria-controls="tabs-profile3"
                aria-selected="false"
                >Profile</a
              >
            </li>
            <li role="presentation">
              <a
                href="#tabs-messages3"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-primary data-[twe-nav-active]:text-primary dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-primary"
                id="tabs-messages-tab3"
                data-twe-toggle="pill"
                data-twe-target="#tabs-messages3"
                role="tab"
                aria-controls="tabs-messages3"
                aria-selected="false"
                >Messages</a
              >
            </li>
          </ul>
    
          <!--Tabs content-->
          <div>
            <div
              class="hidden opacity-100 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-home3"
              role="tabpanel"
              data-twe-tab-active
              aria-labelledby="tabs-home-tab3">
              Tab 1 content button version
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-profile3"
              role="tabpanel"
              aria-labelledby="tabs-profile-tab3">
              Tab 2 content button version
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-messages3"
              role="tabpanel"
              aria-labelledby="tabs-profile-tab3">
              Tab 3 content button version
            </div>
          </div>
          
            
        
            
                
          // Initialization for ES Users
          import {
            Tab,
            initTWE,
          } from "tw-elements";
          
          initTWE({ Tab });
          
            
        

    Color options

    You can use each color from our color palette within the pills.

    • Home
    • Profile
    • Messages
    • Contact
    Tab 1 content
    Tab 2 content
    Tab 3 content
    Tab 4 content
    • Home
    • Profile
    • Messages
    • Contact
    Tab 1 content
    Tab 2 content
    Tab 3 content
    Tab 4 content
    • Home
    • Profile
    • Messages
    • Contact
    Tab 1 content
    Tab 2 content
    Tab 3 content
    Tab 4 content
    • Home
    • Profile
    • Messages
    • Contact
    Tab 1 content
    Tab 2 content
    Tab 3 content
    Tab 4 content
    • Home
    • Profile
    • Messages
    • Contact
    Tab 1 content
    Tab 2 content
    Tab 3 content
    Tab 4 content
    • Home
    • Profile
    • Messages
    • Contact
    Tab 1 content
    Tab 2 content
    Tab 3 content
    Tab 4 content
    • Home
    • Profile
    • Messages
    • Contact
    Tab 1 content
    Tab 2 content
    Tab 3 content
    Tab 4 content
    • HTML
    • javascript
            
                
          <!--Tabs navigation for primary color-->
          <ul
            class="mb-5 flex list-none flex-row flex-wrap border-b-0 ps-0"
            role="tablist"
            data-twe-nav-ref>
            <li role="presentation">
              <a
                href="#tabs-home0"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-primary data-[twe-nav-active]:text-primary dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-primary"
                data-twe-toggle="pill"
                data-twe-target="#tabs-home0"
                data-twe-nav-active
                role="tab"
                aria-controls="tabs-home0"
                aria-selected="true"
                >Home</a
              >
            </li>
            <li role="presentation">
              <a
                href="#tabs-profile0"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-primary data-[twe-nav-active]:text-primary dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-primary"
                data-twe-toggle="pill"
                data-twe-target="#tabs-profile0"
                role="tab"
                aria-controls="tabs-profile0"
                aria-selected="false"
                >Profile</a
              >
            </li>
            <li role="presentation">
              <a
                href="#tabs-messages0"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-primary data-[twe-nav-active]:text-primary dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-primary"
                data-twe-toggle="pill"
                data-twe-target="#tabs-messages0"
                role="tab"
                aria-controls="tabs-messages0"
                aria-selected="false"
                >Messages</a
              >
            </li>
            <li role="presentation">
              <a
                href="#tabs-contact0"
                class="disabled pointer-events-none my-2 block border-x-0 border-b-2 border-t-0 border-transparent bg-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-400 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent dark:text-neutral-600"
                data-twe-toggle="pill"
                data-twe-target="#tabs-contact0"
                role="tab"
                aria-controls="tabs-contact0"
                aria-selected="false"
                >Contact</a
              >
            </li>
          </ul>
    
          <!--Tabs content for primary color-->
          <div class="mb-6">
            <div
              class="hidden opacity-100 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-home0"
              role="tabpanel"
              aria-labelledby="tabs-home-tab0"
              data-twe-tab-active>
              Tab 1 content
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-profile0"
              role="tabpanel"
              aria-labelledby="tabs-profile-tab0">
              Tab 2 content
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-messages0"
              role="tabpanel"
              aria-labelledby="tabs-profile-tab0">
              Tab 3 content
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-contact0"
              role="tabpanel"
              aria-labelledby="tabs-contact-tab0">
              Tab 4 content
            </div>
          </div>
    
          <!--Tabs navigation for secondary color-->
          <ul
            class="mb-5 flex list-none flex-row flex-wrap border-b-0 ps-0"
            role="tablist"
            data-twe-nav-ref>
            <li role="presentation">
              <a
                href="#tabs-home1"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-secondary data-[twe-nav-active]:text-secondary dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-secondary"
                data-twe-toggle="pill"
                data-twe-target="#tabs-home1"
                data-twe-nav-active
                role="tab"
                aria-controls="tabs-home1"
                aria-selected="true"
                >Home</a
              >
            </li>
            <li role="presentation">
              <a
                href="#tabs-profile1"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-secondary data-[twe-nav-active]:text-secondary dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-secondary"
                data-twe-toggle="pill"
                data-twe-target="#tabs-profile1"
                role="tab"
                aria-controls="tabs-profile1"
                aria-selected="false"
                >Profile</a
              >
            </li>
            <li role="presentation">
              <a
                href="#tabs-messages1"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-secondary data-[twe-nav-active]:text-secondary dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-secondary"
                data-twe-toggle="pill"
                data-twe-target="#tabs-messages1"
                role="tab"
                aria-controls="tabs-messages1"
                aria-selected="false"
                >Messages</a
              >
            </li>
            <li role="presentation">
              <a
                href="#tabs-contact1"
                class="disabled pointer-events-none my-2 block border-x-0 border-b-2 border-t-0 border-transparent bg-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-400 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent dark:text-neutral-600"
                data-twe-toggle="pill"
                data-twe-target="#tabs-contact1"
                role="tab"
                aria-controls="tabs-contact1"
                aria-selected="false"
                >Contact</a
              >
            </li>
          </ul>
    
          <!--Tabs content for secondary color-->
          <div class="mb-6">
            <div
              class="hidden opacity-100 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-home1"
              role="tabpanel"
              aria-labelledby="tabs-home-tab1"
              data-twe-tab-active>
              Tab 1 content
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-profile1"
              role="tabpanel"
              aria-labelledby="tabs-profile-tab1">
              Tab 2 content
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-messages1"
              role="tabpanel"
              aria-labelledby="tabs-profile-tab1">
              Tab 3 content
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-contact1"
              role="tabpanel"
              aria-labelledby="tabs-contact-tab1">
              Tab 4 content
            </div>
          </div>
    
          <!--Tabs navigation for success color-->
          <ul
            class="mb-5 flex list-none flex-row flex-wrap border-b-0 ps-0"
            role="tablist"
            data-twe-nav-ref>
            <li role="presentation">
              <a
                href="#tabs-home2"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-success data-[twe-nav-active]:text-success dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-success"
                data-twe-toggle="pill"
                data-twe-target="#tabs-home2"
                data-twe-nav-active
                role="tab"
                aria-controls="tabs-home2"
                aria-selected="true"
                >Home</a
              >
            </li>
            <li role="presentation">
              <a
                href="#tabs-profile2"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-success data-[twe-nav-active]:text-success dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-success"
                data-twe-toggle="pill"
                data-twe-target="#tabs-profile2"
                role="tab"
                aria-controls="tabs-profile2"
                aria-selected="false"
                >Profile</a
              >
            </li>
            <li role="presentation">
              <a
                href="#tabs-messages2"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-success data-[twe-nav-active]:text-success dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-success"
                data-twe-toggle="pill"
                data-twe-target="#tabs-messages2"
                role="tab"
                aria-controls="tabs-messages2"
                aria-selected="false"
                >Messages</a
              >
            </li>
            <li role="presentation">
              <a
                href="#tabs-contact2"
                class="disabled pointer-events-none my-2 block border-x-0 border-b-2 border-t-0 border-transparent bg-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-400 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent dark:text-neutral-600"
                data-twe-toggle="pill"
                data-twe-target="#tabs-contact2"
                role="tab"
                aria-controls="tabs-contact2"
                aria-selected="false"
                >Contact</a
              >
            </li>
          </ul>
    
          <!--Tabs content for success color-->
          <div class="mb-6">
            <div
              class="hidden opacity-100 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-home2"
              role="tabpanel"
              aria-labelledby="tabs-home-tab2"
              data-twe-tab-active>
              Tab 1 content
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-profile2"
              role="tabpanel"
              aria-labelledby="tabs-profile-tab2">
              Tab 2 content
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-messages2"
              role="tabpanel"
              aria-labelledby="tabs-profile-tab2">
              Tab 3 content
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-contact2"
              role="tabpanel"
              aria-labelledby="tabs-contact-tab2">
              Tab 4 content
            </div>
          </div>
    
          <!--Tabs navigation for danger color-->
          <ul
            class="mb-5 flex list-none flex-row flex-wrap border-b-0 ps-0"
            role="tablist"
            data-twe-nav-ref>
            <li role="presentation">
              <a
                href="#tabs-home3"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-danger data-[twe-nav-active]:text-danger dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-danger"
                data-twe-toggle="pill"
                data-twe-target="#tabs-home3"
                data-twe-nav-active
                role="tab"
                aria-controls="tabs-home3"
                aria-selected="true"
                >Home</a
              >
            </li>
            <li role="presentation">
              <a
                href="#tabs-profile3"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-danger data-[twe-nav-active]:text-danger dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-danger"
                data-twe-toggle="pill"
                data-twe-target="#tabs-profile3"
                role="tab"
                aria-controls="tabs-profile3"
                aria-selected="false"
                >Profile</a
              >
            </li>
            <li role="presentation">
              <a
                href="#tabs-messages3"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-danger data-[twe-nav-active]:text-danger dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-danger"
                data-twe-toggle="pill"
                data-twe-target="#tabs-messages3"
                role="tab"
                aria-controls="tabs-messages3"
                aria-selected="false"
                >Messages</a
              >
            </li>
            <li role="presentation">
              <a
                href="#tabs-contact3"
                class="disabled pointer-events-none my-2 block border-x-0 border-b-2 border-t-0 border-transparent bg-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-400 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent dark:text-neutral-600"
                data-twe-toggle="pill"
                data-twe-target="#tabs-contact3"
                role="tab"
                aria-controls="tabs-contact3"
                aria-selected="false"
                >Contact</a
              >
            </li>
          </ul>
    
          <!--Tabs content for danger color-->
          <div class="mb-6">
            <div
              class="hidden opacity-100 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-home3"
              role="tabpanel"
              aria-labelledby="tabs-home-tab3"
              data-twe-tab-active>
              Tab 1 content
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-profile3"
              role="tabpanel"
              aria-labelledby="tabs-profile-tab3">
              Tab 2 content
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-messages3"
              role="tabpanel"
              aria-labelledby="tabs-profile-tab3">
              Tab 3 content
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-contact3"
              role="tabpanel"
              aria-labelledby="tabs-contact-tab3">
              Tab 4 content
            </div>
          </div>
    
          <!--Tabs navigation for warning color-->
          <ul
            class="mb-5 flex list-none flex-row flex-wrap border-b-0 ps-0"
            role="tablist"
            data-twe-nav-ref>
            <li role="presentation">
              <a
                href="#tabs-home4"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-warning data-[twe-nav-active]:text-warning dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-warning"
                data-twe-toggle="pill"
                data-twe-target="#tabs-home4"
                data-twe-nav-active
                role="tab"
                aria-controls="tabs-home4"
                aria-selected="true"
                >Home</a
              >
            </li>
            <li role="presentation">
              <a
                href="#tabs-profile4"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-warning data-[twe-nav-active]:text-warning dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-warning"
                data-twe-toggle="pill"
                data-twe-target="#tabs-profile4"
                role="tab"
                aria-controls="tabs-profile4"
                aria-selected="false"
                >Profile</a
              >
            </li>
            <li role="presentation">
              <a
                href="#tabs-messages4"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-warning data-[twe-nav-active]:text-warning dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-warning"
                data-twe-toggle="pill"
                data-twe-target="#tabs-messages4"
                role="tab"
                aria-controls="tabs-messages4"
                aria-selected="false"
                >Messages</a
              >
            </li>
            <li role="presentation">
              <a
                href="#tabs-contact4"
                class="disabled pointer-events-none my-2 block border-x-0 border-b-2 border-t-0 border-transparent bg-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-400 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent dark:text-neutral-600"
                data-twe-toggle="pill"
                data-twe-target="#tabs-contact4"
                role="tab"
                aria-controls="tabs-contact4"
                aria-selected="false"
                >Contact</a
              >
            </li>
          </ul>
    
          <!--Tabs content for warning color-->
          <div class="mb-6">
            <div
              class="hidden opacity-100 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-home4"
              role="tabpanel"
              aria-labelledby="tabs-home-tab4"
              data-twe-tab-active>
              Tab 1 content
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-profile4"
              role="tabpanel"
              aria-labelledby="tabs-profile-tab4">
              Tab 2 content
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-messages4"
              role="tabpanel"
              aria-labelledby="tabs-profile-tab4">
              Tab 3 content
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-contact4"
              role="tabpanel"
              aria-labelledby="tabs-contact-tab4">
              Tab 4 content
            </div>
          </div>
    
          <!--Tabs navigation for info color-->
          <ul
            class="mb-5 flex list-none flex-row flex-wrap border-b-0 ps-0"
            role="tablist"
            data-twe-nav-ref>
            <li role="presentation">
              <a
                href="#tabs-home5"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-info data-[twe-nav-active]:text-info dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-info"
                data-twe-toggle="pill"
                data-twe-target="#tabs-home5"
                data-twe-nav-active
                role="tab"
                aria-controls="tabs-home5"
                aria-selected="true"
                >Home</a
              >
            </li>
            <li role="presentation">
              <a
                href="#tabs-profile5"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-info data-[twe-nav-active]:text-info dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-info"
                data-twe-toggle="pill"
                data-twe-target="#tabs-profile5"
                role="tab"
                aria-controls="tabs-profile5"
                aria-selected="false"
                >Profile</a
              >
            </li>
            <li role="presentation">
              <a
                href="#tabs-messages5"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-info data-[twe-nav-active]:text-info dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-info"
                data-twe-toggle="pill"
                data-twe-target="#tabs-messages5"
                role="tab"
                aria-controls="tabs-messages5"
                aria-selected="false"
                >Messages</a
              >
            </li>
            <li role="presentation">
              <a
                href="#tabs-contact5"
                class="disabled pointer-events-none my-2 block border-x-0 border-b-2 border-t-0 border-transparent bg-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-400 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent dark:text-neutral-600"
                data-twe-toggle="pill"
                data-twe-target="#tabs-contact5"
                role="tab"
                aria-controls="tabs-contact5"
                aria-selected="false"
                >Contact</a
              >
            </li>
          </ul>
    
          <!--Tabs content for info color-->
          <div class="mb-6">
            <div
              class="hidden opacity-100 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-home5"
              role="tabpanel"
              aria-labelledby="tabs-home-tab5"
              data-twe-tab-active>
              Tab 1 content
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-profile5"
              role="tabpanel"
              aria-labelledby="tabs-profile-tab5">
              Tab 2 content
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-messages5"
              role="tabpanel"
              aria-labelledby="tabs-profile-tab5">
              Tab 3 content
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-contact5"
              role="tabpanel"
              aria-labelledby="tabs-contact-tab5">
              Tab 4 content
            </div>
          </div>
    
          <!--Tabs navigation for dark color-->
          <ul
            class="mb-5 flex list-none flex-row flex-wrap border-b-0 ps-0"
            role="tablist"
            data-twe-nav-ref>
            <li role="presentation">
              <a
                href="#tabs-home7"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-neutral-800 data-[twe-nav-active]:text-neutral-800 dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:border-neutral-600 dark:data-[twe-nav-active]:text-neutral-600"
                data-twe-toggle="pill"
                data-twe-target="#tabs-home7"
                data-twe-nav-active
                role="tab"
                aria-controls="tabs-home7"
                aria-selected="true"
                >Home</a
              >
            </li>
            <li role="presentation">
              <a
                href="#tabs-profile7"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-neutral-800 data-[twe-nav-active]:text-neutral-800 dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:border-neutral-600 dark:data-[twe-nav-active]:text-neutral-600"
                data-twe-toggle="pill"
                data-twe-target="#tabs-profile7"
                role="tab"
                aria-controls="tabs-profile7"
                aria-selected="false"
                >Profile</a
              >
            </li>
            <li role="presentation">
              <a
                href="#tabs-messages7"
                class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-neutral-800 data-[twe-nav-active]:text-neutral-800 dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:border-neutral-600 dark:data-[twe-nav-active]:text-neutral-600"
                data-twe-toggle="pill"
                data-twe-target="#tabs-messages7"
                role="tab"
                aria-controls="tabs-messages7"
                aria-selected="false"
                >Messages</a
              >
            </li>
            <li role="presentation">
              <a
                href="#tabs-contact7"
                class="disabled pointer-events-none my-2 block border-x-0 border-b-2 border-t-0 border-transparent bg-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-400 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent dark:text-neutral-600"
                data-twe-toggle="pill"
                data-twe-target="#tabs-contact7"
                role="tab"
                aria-controls="tabs-contact7"
                aria-selected="false"
                >Contact</a
              >
            </li>
          </ul>
    
          <!--Tabs content for dark color-->
          <div class="mb-6">
            <div
              class="hidden opacity-100 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-home7"
              role="tabpanel"
              aria-labelledby="tabs-home-tab7"
              data-twe-tab-active>
              Tab 1 content
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-profile7"
              role="tabpanel"
              aria-labelledby="tabs-profile-tab7">
              Tab 2 content
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-messages7"
              role="tabpanel"
              aria-labelledby="tabs-profile-tab7">
              Tab 3 content
            </div>
            <div
              class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
              id="tabs-contact7"
              role="tabpanel"
              aria-labelledby="tabs-contact-tab7">
              Tab 4 content
            </div>
          </div>
          
            
        
            
                
          // Initialization for ES Users
          import {
            Tab,
            initTWE,
          } from "tw-elements";
          
          initTWE({ Tab });
          
            
        

    Related resources

    Tutorials:

    navbar colors icons focus active and others dark mode flexbox spacing buttons rounded corners cards sizing badges

    Extended Docs:

    animations colors icons breadcrumbs navbar pagination pills scrollspy accordion button group buttons cards collapse list group ripple borders breakpoints center text colors columns dark theme display flex flexbox grid gap icons position spacing

    Generators and builders:

    Form drag & drop Typography SVG icon Instagram Filters button card table flexbox logo grid footer

    Design System (Figma):

    introduction content should be the star less is more power of visual hierarchy art of prioritization de emphasize with no mercy size matters lowering contrast low contrast vs low aesthetics let it breathe user experience do not start with the roof project personality design system principles tips and tricks
    • Basic example
    • Fill
    • Justify
    • Vertical
    • Buttons
    • Color options
    • Related resources

    Tabs - API


    Import

    Importing components depends on how your application works. If you intend to use the TW elements ES format, you must first import the component and then initialize it with the initTWE method. If you are going to use the UMD format, just import the tw-elements package.

    • javascript
    • umd
            
                
            import { Tab, initTWE } from "tw-elements";
            initTWE({ Tab });
            
            
        
            
                
            import "tw-elements";
            
            
        

    Usage

    Regarding accessibility

    If you’re using navs to provide a navigation bar, be sure to add a role="navigation" to the most logical parent container of the <ul>, or wrap a <nav> element around the whole navigation. Do not add the role to the <ul> itself, as this would prevent it from being announced as an actual list by assistive technologies.


    Note that navigation bars should not be given role="tablist", role="tab" or role="tabpanel" attributes. These are only appropriate for dynamic tabbed interfaces, as described in the WAI ARIA Authoring Practices. The aria-current attribute is not necessary on dynamic tabbed interfaces since our JavaScript handles the selected state by adding aria-selected="true" on the active tab.

    Via data attributes

    You can activate a tab or pill navigation by simply specifying data-twe-toggle="tab" or data-twe-toggle="pill" on an element.

    • HTML
            
                
            <ul
              class="mb-5 flex list-none flex-row flex-wrap border-b-0 ps-0"
              role="tablist"
              data-twe-nav-ref>
              <li role="presentation">
                <a
                  href="#tabs-home"
                  class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-primary data-[twe-nav-active]:text-primary dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-primary"
                  data-twe-toggle="pill"
                  data-twe-target="#tabs-home"
                  data-twe-nav-active
                  role="tab"
                  aria-controls="tabs-home"
                  aria-selected="true"
                  >Home</a
                >
              </li>
              <li role="presentation">
                <a
                  href="#tabs-profile"
                  class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-primary data-[twe-nav-active]:text-primary dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-primary"
                  data-twe-toggle="pill"
                  data-twe-target="#tabs-profile"
                  role="tab"
                  aria-controls="tabs-profile"
                  aria-selected="false"
                  >Profile</a
                >
              </li>
              <li role="presentation">
                <a
                  href="#tabs-messages"
                  class="my-2 block border-x-0 border-b-2 border-t-0 border-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-500 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent data-[twe-nav-active]:border-primary data-[twe-nav-active]:text-primary dark:text-white/50 dark:hover:bg-neutral-700/60 dark:data-[twe-nav-active]:text-primary"
                  data-twe-toggle="pill"
                  data-twe-target="#tabs-messages"
                  role="tab"
                  aria-controls="tabs-messages"
                  aria-selected="false"
                  >Messages</a
                >
              </li>
              <li role="presentation">
                <a
                  href="#tabs-contact"
                  class="disabled pointer-events-none my-2 block border-x-0 border-b-2 border-t-0 border-transparent bg-transparent px-7 pb-3.5 pt-4 text-xs font-medium uppercase leading-tight text-neutral-400 hover:isolate hover:border-transparent hover:bg-neutral-100 focus:isolate focus:border-transparent dark:text-neutral-600"
                  data-twe-toggle="pill"
                  data-twe-target="#tabs-contact"
                  role="tab"
                  aria-controls="tabs-contact"
                  aria-selected="false"
                  >Contact</a
                >
              </li>
            </ul>
            <div class="mb-6">
              <div
                class="hidden opacity-100 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
                id="tabs-home"
                role="tabpanel"
                aria-labelledby="tabs-home-tab"
                data-twe-tab-active>
                Tab 1 content
              </div>
              <div
                class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
                id="tabs-profile"
                role="tabpanel"
                aria-labelledby="tabs-profile-tab">
                Tab 2 content
              </div>
              <div
                class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
                id="tabs-messages"
                role="tabpanel"
                aria-labelledby="tabs-profile-tab">
                Tab 3 content
              </div>
              <div
                class="hidden opacity-0 transition-opacity duration-150 ease-linear data-[twe-tab-active]:block"
                id="tabs-contact"
                role="tabpanel"
                aria-labelledby="tabs-contact-tab">
                Tab 4 content
              </div>
            </div>
            
            
        

    Via JavaScript

    Enable tabbable pills via JavaScript (each tab needs to be activated individually):

    • javascript
    • umd
            
                
              const triggerTabList = [].slice.call(document.querySelectorAll('#myTab a'))
              triggerTabList.forEach((triggerEl) => {
                const tabTrigger = new Tab(triggerEl);
    
                triggerEl.addEventListener('click', (e) => {
                  e.preventDefault();
                  tabTrigger.show();
                });
              });
            
            
        
            
                
              const triggerTabList = [].slice.call(document.querySelectorAll('#myTab a'))
              triggerTabList.forEach((triggerEl) => {
                const tabTrigger = new twe.Tab(triggerEl);
    
                triggerEl.addEventListener('click', (e) => {
                  e.preventDefault();
                  tabTrigger.show();
                });
              });
            
            
        

    You can activate individual pills in several ways:

    • javascript
    • umd
            
                
              const triggerEl = document.querySelector('#myTab a[href="#profile"]');
              Tab.getInstance(triggerEl).show(); // Select tab by name
    
              const triggerFirstTabEl = document.querySelector('#myTab li:first-child a');
              Tab.getInstance(triggerFirstTabEl).show(); // Select first tab
            
            
        
            
                
              const triggerEl = document.querySelector('#myTab a[href="#profile"]');
              twe.Tab.getInstance(triggerEl).show(); // Select tab by name
    
              const triggerFirstTabEl = document.querySelector('#myTab li:first-child a');
              twe.Tab.getInstance(triggerFirstTabEl).show(); // Select first tab
            
            
        

    Classes

    Custom classes can be passed via data attributes or JavaScript. For data attributes, append the class name to data-twe-class, as in data-twe-class-show="opacity-100 bg-red-600"

    Name Default Description
    hide opacity-0 Sets styles for hidden tab.
    show opacity-100 Sets styles for visible tab.
    • javascript
    • umd
            
                
                const someTabTriggerEl = document.querySelector('#someTabTrigger');
                const tab = new Tab(someTabTriggerEl, {show: "opacity-100 bg-red-600"});
              
            
        
            
                
                const someTabTriggerEl = document.querySelector('#someTabTrigger');
                const tab = new twe.Tab(someTabTriggerEl, {show: "opacity-100 bg-red-600"});
              
            
        

    Methods

    Asynchronous methods and transitions:
    All API methods are asynchronous and start a transition. They return to the caller as soon as the transition is started but before it ends. In addition, a method call on a transitioning component will be ignored.

    Method Description Example
    show Selects the given tab and shows its associated pane. Any other tab that was previously selected becomes unselected and its associated pane is hidden. Returns to the caller before the tab pane has actually been shown (i.e. before the shown.twe.tab event occurs). instance.show()
    dispose Destroys an element’s tab. instance.hide()
    getInstance Static method which allows you to get the tooltip instance associated with a DOM element. Tab.getInstance(someTabTriggerEl)
    • javascript
    • umd
            
                
                const someTabTriggerEl = document.querySelector('#someTabTrigger');
                const tab = new Tab(someTabTriggerEl);
                tab.show();
              
            
        
            
                
                const someTabTriggerEl = document.querySelector('#someTabTrigger');
                const tab = new twe.Tab(someTabTriggerEl);
                tab.show();
              
            
        

    Events

    When showing a new tab, the events fire in the following order:


    • hide.twe.tab (on the current active tab)
    • show.twe.tab (on the to-be-shown tab)
    • hidden.twe.tab (on the previous active tab, the same one as for the hide.twe.tab event)
    • shown.twe.tab (on the newly-active just-shown tab, the same one as for the show.twe.tab event)

    If no tab was already active, then the hide.twe.tab and hidden.twe.tab events will not be fired.

    Event type Description
    show.twe.tab This event fires on tab show, but before the new tab has been shown. Use event.target and event.relatedTarget to target the active tab and the previous active tab (if available) respectively.
    shown.twe.tab This event is fired when the tooltip has been made visible to the user (will wait for CSS transitions to complete).
    hide.twe.tab This event is fired immediately when the hide instance method has been called.
    hidden.twe.tab This event is fired when the tooltip has finished being hidden from the user (will wait for CSS transitions to complete).
    • JavaScript
            
                
                  const tabEl = document.querySelector('a[data-twe-toggle="pill"]');
                  tabEl.addEventListener('shown.twe.tab', (e) => {
                    e.target // newly activated tab
                    e.relatedTarget // previous active tab
                  });
                
            
        
    • Import
    • Usage
    • Classes
    • Methods
    • Events
    Get useful tips & free resources directly to your inbox along with exclusive subscriber-only content.
    Join our mailing list now
    © 2024 Copyright: MDBootstrap.com

    Access restricted

    To view this section you must have an active PRO account

    Log in to your account or purchase an TWE subscription if you don't have one.

    Buy TWE PRO