1.0.10 • Published 4 years ago

@nitro-ui/component-tab v1.0.10

Weekly downloads
68
License
ISC
Repository
github
Last release
4 years ago

Nitro UI: Component > Tab

Tab component for Nitro UI.

Getting Started

Get latest version by installing via NPM @nitro-ui/component-tab:

npm install @nitro-ui/component-tab

Include this stylesheet code into your site:

<link rel="stylesheet" href="dist/tab.min.css" />

Usage:

Nitro tab is the extended version of Boostrap 4 Tab. Nitro tab uses c-tab class for parent and c-tab__item for the children. Add data-toggle="tab" to the c-tab__item for it to work. Active tab will added is--active class when it activated.

Dynamic tabbed interfaces, as described in the WAI ARIA Authoring Practices, require role="tablist", role="tab", role="tabpanel", and additional aria- attributes in order to convey their structure, functionality and current state to users of assistive technologies (such as screen readers).

Normal tab

<div class="c-tab" role="tablist">
    <a class="c-tab__item  is--active" data-toggle="tab" href="#nav-1" role="tab" aria-selected="true" aria-controls="nav-1">
        <span class="fas fa-award  mr-2"></span><!-- with font awesome-->
        <span>Shortlist</span>
    </a>
    <a class="c-tab__item" data-toggle="tab" href="#nav-2" role="tab" aria-selected="false" aria-controls="nav-2">        
        <span>Inbox</span>
    </a>
    <a class="c-tab__item" data-toggle="tab" href="#nav-3" role="tab" aria-selected="false" aria-controls="nav-3">
        <!-- with svg icon-->       
        <svg class="icon-svg  icon-svg--24" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="#000000"><path d="M 5 3 C 3.895 3 3 3.895 3 5 L 3 6 L 3 7 L 3 19 C 3 20.105 3.895 21 5 21 L 14.171875 21 C 14.723875 21 15.171875 20.552 15.171875 20 C 15.171875 19.448 14.724875 19 14.171875 19 L 5 19 L 5 7 L 19 7 L 18.998047 14.171875 C 18.998047 14.723875 19.446047 15.171875 19.998047 15.171875 C 20.550047 15.171875 20.998047 14.723875 20.998047 14.171875 L 20.998047 7 L 21 7 L 21 5 C 21 3.895 20.105 3 19 3 L 5 3 z M 7.5 10 C 7.224 10 7 10.224 7 10.5 L 7 11.5 C 7 11.776 7.224 12 7.5 12 L 8.5 12 C 8.776 12 9 11.776 9 11.5 L 9 10.5 C 9 10.224 8.776 10 8.5 10 L 7.5 10 z M 12 10 C 11.448 10 11 10.448 11 11 C 11 11.552 11.448 12 12 12 L 16 12 C 16.552 12 17 11.552 17 11 C 17 10.448 16.552 10 16 10 L 12 10 z M 7.5 14 C 7.224 14 7 14.224 7 14.5 L 7 15.5 C 7 15.776 7.224 16 7.5 16 L 8.5 16 C 8.776 16 9 15.776 9 15.5 L 9 14.5 C 9 14.224 8.776 14 8.5 14 L 7.5 14 z M 12 14 C 11.448 14 11 14.448 11 15 C 11 15.552 11.448 16 12 16 L 13 16 L 13 14 L 12 14 z M 15 15 L 15 17 L 20.146484 22.146484 L 22.146484 20.146484 L 17 15 L 15 15 z M 22.853516 20.853516 L 20.853516 22.853516 L 21.853516 23.853516 C 22.048516 24.048516 22.365547 24.048516 22.560547 23.853516 L 23.853516 22.560547 C 24.048516 22.364547 24.048516 22.048516 23.853516 21.853516 L 22.853516 20.853516 z" fill="#000000"/>
        <span>Chat</span>
    </a>
</div>

<div class="c-tab-content">
    <div class="c-tab__pane  is--active" id="nav-1">
        <p>..Content tab..</p>
    </div>
    <div class="c-tab__pane" id="nav-2">
        <p>..Content tab..</p>
    </div>
    <div class="c-tab__pane" id="nav-3">
        <p>..Content tab..</p>
    </div>
</div>

Justified tab

To make the tab become wide and taking full horizontal space add c-tab--justified to c-tab.

<div class="c-tab  c-tab--justified" role="tablist">
    ...

Button tab

Nitro Tab also support button style. Button component already defined as tab dependencies for it to support button style. Add c-tab--buttons class to c-tab.

<div class="c-tab  c-tab--buttons" role="tablist">
    <a data-toggle="tab" class="c-tab__item  c-btn  c-btn--secondary-outline" href="#sample-tab-content-2-1" role="tab" aria-controls="sample-tab-content-2-1"  aria-selected="false">
        <span>Shortlist</span>
    </a>
    <a data-toggle="tab" class="c-tab__item  c-btn  c-btn--secondary-outline" href="#sample-tab-content-2-2" role="tab" aria-controls="sample-tab-content-2-2"  aria-selected="false">
        <span>Inbox</span>
    </a>
    <a data-toggle="tab" class="c-tab__item is--active  c-btn  c-btn--secondary-outline" href="#sample-tab-content-2-3" role="tab" aria-controls="sample-tab-content-2-3" aria-selected="true">
        <span>Chat</span>
    </a>
</div>

<div class="c-tab-content mb-5">
    <div class="c-tab__pane" id="sample-tab-content-2-1">
        <p>..Content tab..</p>
    </div>
    <div class="c-tab__pane" id="sample-tab-content-2-2">
        <p>..Content tab..</p>
    </div>
    <div class="c-tab__pane is--active" id="sample-tab-content-2-3">
        <p>..Content tab..</p>
    </div>
</div>

Justified Button tab

To make the tab buttons become wide and taking full horizontal space add c-tab--justified to c-tab.

<div class="c-tab  c-tab--buttons  c-tab--justified" role="tablist">
    ...

Development

To extends, develop or contribute to this component, you're required to fork our main repository and made a pull request.

Development Requirements

Development tools required for this component are:

Ruby and SASS are optional if you're fully using node-sass from npm for development.

Development Setup

Run:

npm install

Compile

Run:

grunt

TODO

Nothing todo for now.


CHANGELOG

All notable changes to this project will be documented in this file. For now, let's keep TODO and CHANGELOG in README file. Keeping things simple.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

0.0.0-beta - 2019-07-18

Added

  • Initial setup
1.0.9

4 years ago

1.0.10

4 years ago

1.0.7

4 years ago

1.0.6

4 years ago

1.0.5

4 years ago

1.0.4

4 years ago

1.0.3

4 years ago

1.0.2

5 years ago

1.0.1

5 years ago

1.0.0

5 years ago

1.0.0-alpha.6

5 years ago

1.0.0-alpha.5

5 years ago

1.0.0-alpha.4

5 years ago

1.0.0-alpha.3

5 years ago

1.0.0-alpha.2

5 years ago

1.0.0-alpha.1

5 years ago