0.0.1 • Published 1 year ago

@universityofmaryland/tabs v0.0.1

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

<Tabs> element

Installation

$ yarn add @universityofmaryland/tabs

Usage

import '@universityofmaryland/tabs';
<umd-tabs maximum-height>
  <button aria-controls="example-1">Example 1</button>
  <div aria-hidden="true" id="example-1">
    <div>
      <p>
        Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod
        tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim
        veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea
        commodo consequat. Duis aute irure dolor in reprehenderit in voluptate
        velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint
        occaecat cupidatat non proident, sunt in culpa qui officia deserunt
        mollit anim id est laborum.
      </p>
      <a href="https://google.com" target="_blank" rel="noopener">Google</a>.
    </div>
  </div>

  <button aria-controls="example-2">Example 2</button>
  <div aria-hidden="true" id="example-2">
    <p>
      Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod
      tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim
      veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea
      commodo consequat. Duis aute irure dolor in reprehenderit in voluptate
      velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat
      cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id
      est laborum.
    </p>
  </div>
</umd-tabs>
umd-tabs {
  margin-bottom: 40px;
  display: block;
  height: 50vh; // Attributes options will overwrite
}

umd-tabs:not(:defined) {
  height: 20vh;
}

/* Overwrites Styles  */

umd-tabs button {
  background-color: red;
  color: white;
  border: 1px solid black;
  border: none;
}

umd-tabs button[data-active] {
  border: 1px solid #000;
  border-bottom: none;
}

umd-tabs div[aria-hidden] {
  border-top: 1px solid #000;
}

Options

  1. Maximum Height: As shown in the example above, a maximum-height attribute can be passed to component as a directive to size the tabs container to the size of the tab with the largest content height.

  2. Smooth Transition: A smooth-transition attribute can applied that will set the component to resize to each tabs height.

  3. Fixed Height: a fixed-height attribute will force the component to be a specified height. This attribute is dynamic and can be updated after load (Example: resize events).

License

Distributed under the MIT license. See LICENSE for details.

0.0.1

1 year ago