ਮੁੱਖ ਸਮੱਗਰੀ ਤੇ ਜਾਓ ਡੌਕਸ ਨੈਵੀਗੇਸ਼ਨ 'ਤੇ ਜਾਓ
Check
in English

Navs ਅਤੇ ਟੈਬਾਂ

ਬੂਟਸਟਰੈਪ ਦੇ ਸ਼ਾਮਲ ਨੈਵੀਗੇਸ਼ਨ ਕੰਪੋਨੈਂਟਸ ਦੀ ਵਰਤੋਂ ਕਰਨ ਲਈ ਦਸਤਾਵੇਜ਼ ਅਤੇ ਉਦਾਹਰਨਾਂ।

ਅਧਾਰ ਨੈਵ

.navਬੂਟਸਟਰੈਪ ਵਿੱਚ ਉਪਲਬਧ ਨੈਵੀਗੇਸ਼ਨ ਬੇਸ ਕਲਾਸ ਤੋਂ ਸਰਗਰਮ ਅਤੇ ਅਯੋਗ ਅਵਸਥਾਵਾਂ ਤੱਕ, ਆਮ ਮਾਰਕਅਪ ਅਤੇ ਸ਼ੈਲੀਆਂ ਨੂੰ ਸਾਂਝਾ ਕਰਦਾ ਹੈ। ਹਰੇਕ ਸ਼ੈਲੀ ਦੇ ਵਿਚਕਾਰ ਅਦਲਾ-ਬਦਲੀ ਕਰਨ ਲਈ ਸੋਧਕ ਕਲਾਸਾਂ ਨੂੰ ਸਵੈਪ ਕਰੋ।

ਬੇਸ .navਕੰਪੋਨੈਂਟ ਫਲੈਕਸਬਾਕਸ ਨਾਲ ਬਣਾਇਆ ਗਿਆ ਹੈ ਅਤੇ ਹਰ ਕਿਸਮ ਦੇ ਨੈਵੀਗੇਸ਼ਨ ਕੰਪੋਨੈਂਟ ਬਣਾਉਣ ਲਈ ਇੱਕ ਮਜ਼ਬੂਤ ​​ਬੁਨਿਆਦ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। ਇਸ ਵਿੱਚ ਕੁਝ ਸਟਾਈਲ ਓਵਰਰਾਈਡ (ਸੂਚੀਆਂ ਨਾਲ ਕੰਮ ਕਰਨ ਲਈ), ਵੱਡੇ ਹਿੱਟ ਖੇਤਰਾਂ ਲਈ ਕੁਝ ਲਿੰਕ ਪੈਡਿੰਗ, ਅਤੇ ਬੁਨਿਆਦੀ ਅਸਮਰਥਿਤ ਸਟਾਈਲਿੰਗ ਸ਼ਾਮਲ ਹਨ।

ਬੇਸ ਕੰਪੋਨੈਂਟ ਵਿੱਚ ਕੋਈ ਰਾਜ .navਸ਼ਾਮਲ ਨਹੀਂ ਹੁੰਦਾ । .activeਨਿਮਨਲਿਖਤ ਉਦਾਹਰਨਾਂ ਵਿੱਚ ਕਲਾਸ ਸ਼ਾਮਲ ਹੈ, ਮੁੱਖ ਤੌਰ 'ਤੇ ਇਹ ਦਰਸਾਉਣ ਲਈ ਕਿ ਇਹ ਵਿਸ਼ੇਸ਼ ਕਲਾਸ ਕਿਸੇ ਵਿਸ਼ੇਸ਼ ਸਟਾਈਲਿੰਗ ਨੂੰ ਚਾਲੂ ਨਹੀਂ ਕਰਦੀ ਹੈ।

ਕਿਰਿਆਸ਼ੀਲ ਸਥਿਤੀ ਨੂੰ ਸਹਾਇਕ ਤਕਨਾਲੋਜੀਆਂ ਤੱਕ ਪਹੁੰਚਾਉਣ ਲਈ, aria-currentਵਿਸ਼ੇਸ਼ਤਾ ਦੀ ਵਰਤੋਂ ਕਰੋ — pageਮੌਜੂਦਾ ਪੰਨੇ ਲਈ ਮੁੱਲ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ, ਜਾਂ trueਇੱਕ ਸੈੱਟ ਵਿੱਚ ਮੌਜੂਦਾ ਆਈਟਮ ਲਈ।

html
<ul class="nav">
  <li class="nav-item">
    <a class="nav-link active" aria-current="page" href="#">Active</a>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link disabled">Disabled</a>
  </li>
</ul>

ਕਲਾਸਾਂ ਦੌਰਾਨ ਵਰਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ, ਇਸਲਈ ਤੁਹਾਡਾ ਮਾਰਕਅੱਪ ਬਹੁਤ ਲਚਕਦਾਰ ਹੋ ਸਕਦਾ ਹੈ। ਜੇਕਰ ਤੁਹਾਡੀਆਂ ਆਈਟਮਾਂ ਦਾ ਕ੍ਰਮ ਮਹੱਤਵਪੂਰਨ ਹੈ <ul>, ਤਾਂ ਉੱਪਰ ਦਿੱਤੇ ਵਾਂਗ s ਦੀ ਵਰਤੋਂ ਕਰੋ , ਜਾਂ ਕਿਸੇ ਤੱਤ ਨਾਲ ਆਪਣੀ ਖੁਦ ਦੀ ਰੋਲ ਕਰੋ। ਕਿਉਂਕਿ ਵਰਤੋਂ , ਨੈਵੀ ਲਿੰਕ ਉਸੇ ਤਰ੍ਹਾਂ ਦਾ ਵਿਵਹਾਰ ਕਰਦੇ ਹਨ ਜਿਵੇਂ ਕਿ nav ਆਈਟਮਾਂ ਹੁੰਦੀਆਂ ਹਨ, ਪਰ ਵਾਧੂ ਮਾਰਕਅੱਪ ਤੋਂ ਬਿਨਾਂ।<ol><nav>.navdisplay: flex

html
<nav class="nav">
  <a class="nav-link active" aria-current="page" href="#">Active</a>
  <a class="nav-link" href="#">Link</a>
  <a class="nav-link" href="#">Link</a>
  <a class="nav-link disabled">Disabled</a>
</nav>

ਉਪਲਬਧ ਸ਼ੈਲੀਆਂ

.navਸੰਸ਼ੋਧਕਾਂ ਅਤੇ ਉਪਯੋਗਤਾਵਾਂ ਦੇ ਨਾਲ s ਕੰਪੋਨੈਂਟ ਦੀ ਸ਼ੈਲੀ ਨੂੰ ਬਦਲੋ । ਲੋੜ ਅਨੁਸਾਰ ਮਿਲਾਓ ਅਤੇ ਮੇਲ ਕਰੋ, ਜਾਂ ਆਪਣਾ ਬਣਾਓ।

ਹਰੀਜ਼ੱਟਲ ਅਲਾਈਨਮੈਂਟ

flexbox ਉਪਯੋਗਤਾਵਾਂ ਨਾਲ ਆਪਣੀ nav ਦੀ ਲੇਟਵੀਂ ਅਲਾਈਨਮੈਂਟ ਬਦਲੋ । ਪੂਰਵ-ਨਿਰਧਾਰਤ ਤੌਰ 'ਤੇ, ਨੈਵ ਖੱਬੇ-ਅਲਾਈਨ ਹੁੰਦੇ ਹਨ, ਪਰ ਤੁਸੀਂ ਉਹਨਾਂ ਨੂੰ ਆਸਾਨੀ ਨਾਲ ਕੇਂਦਰ ਜਾਂ ਸੱਜੇ ਇਕਸਾਰ ਵਿੱਚ ਬਦਲ ਸਕਦੇ ਹੋ।

ਇਸ ਨਾਲ ਕੇਂਦਰਿਤ .justify-content-center:

html
<ul class="nav justify-content-center">
  <li class="nav-item">
    <a class="nav-link active" aria-current="page" href="#">Active</a>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link disabled">Disabled</a>
  </li>
</ul>

ਇਸ ਨਾਲ ਸੱਜੇ-ਸੰਗਠਿਤ .justify-content-end:

html
<ul class="nav justify-content-end">
  <li class="nav-item">
    <a class="nav-link active" aria-current="page" href="#">Active</a>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link disabled">Disabled</a>
  </li>
</ul>

ਵਰਟੀਕਲ

.flex-columnਉਪਯੋਗਤਾ ਦੇ ਨਾਲ ਫਲੈਕਸ ਆਈਟਮ ਦੀ ਦਿਸ਼ਾ ਬਦਲ ਕੇ ਆਪਣੇ ਨੇਵੀਗੇਸ਼ਨ ਨੂੰ ਸਟੈਕ ਕਰੋ । ਉਹਨਾਂ ਨੂੰ ਕੁਝ ਵਿਊਪੋਰਟਾਂ 'ਤੇ ਸਟੈਕ ਕਰਨ ਦੀ ਲੋੜ ਹੈ ਪਰ ਹੋਰ ਨਹੀਂ? ਜਵਾਬਦੇਹ ਸੰਸਕਰਣਾਂ ਦੀ ਵਰਤੋਂ ਕਰੋ (ਉਦਾਹਰਨ ਲਈ, .flex-sm-column)।

html
<ul class="nav flex-column">
  <li class="nav-item">
    <a class="nav-link active" aria-current="page" href="#">Active</a>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link disabled">Disabled</a>
  </li>
</ul>

ਹਮੇਸ਼ਾ ਵਾਂਗ, ਵਰਟੀਕਲ ਨੈਵੀਗੇਸ਼ਨ s ਤੋਂ ਬਿਨਾਂ ਵੀ ਸੰਭਵ <ul>ਹੈ।

html
<nav class="nav flex-column">
  <a class="nav-link active" aria-current="page" href="#">Active</a>
  <a class="nav-link" href="#">Link</a>
  <a class="nav-link" href="#">Link</a>
  <a class="nav-link disabled">Disabled</a>
</nav>

ਟੈਬਸ

ਉੱਪਰੋਂ ਮੂਲ nav ਲੈਂਦਾ ਹੈ ਅਤੇ .nav-tabsਇੱਕ ਟੈਬਡ ਇੰਟਰਫੇਸ ਬਣਾਉਣ ਲਈ ਕਲਾਸ ਜੋੜਦਾ ਹੈ। ਸਾਡੇ ਟੈਬ JavaScript ਪਲੱਗਇਨ ਨਾਲ ਟੈਬਬਲ ਖੇਤਰ ਬਣਾਉਣ ਲਈ ਇਹਨਾਂ ਦੀ ਵਰਤੋਂ ਕਰੋ ।

html
<ul class="nav nav-tabs">
  <li class="nav-item">
    <a class="nav-link active" aria-current="page" href="#">Active</a>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link disabled">Disabled</a>
  </li>
</ul>

ਗੋਲੀਆਂ

ਉਹੀ HTML ਲਓ, ਪਰ ਇਸਦੀ .nav-pillsਬਜਾਏ ਵਰਤੋਂ:

html
<ul class="nav nav-pills">
  <li class="nav-item">
    <a class="nav-link active" aria-current="page" href="#">Active</a>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link disabled">Disabled</a>
  </li>
</ul>

ਭਰੋ ਅਤੇ ਜਾਇਜ਼ ਠਹਿਰਾਓ

.navਦੋ ਮੋਡੀਫਾਇਰ ਕਲਾਸਾਂ ਵਿੱਚੋਂ ਇੱਕ ਪੂਰੀ ਉਪਲਬਧ ਚੌੜਾਈ ਨੂੰ ਵਧਾਉਣ ਲਈ ਆਪਣੀ ਸਮੱਗਰੀ ਨੂੰ ਮਜਬੂਰ ਕਰੋ । ਆਪਣੇ .nav-items ਨਾਲ ਸਾਰੀ ਉਪਲਬਧ ਥਾਂ ਨੂੰ ਅਨੁਪਾਤਕ ਤੌਰ 'ਤੇ ਭਰਨ ਲਈ, ਵਰਤੋ .nav-fill। ਧਿਆਨ ਦਿਓ ਕਿ ਸਾਰੀ ਹਰੀਜੱਟਲ ਸਪੇਸ ਉੱਤੇ ਕਬਜ਼ਾ ਹੈ, ਪਰ ਹਰ ਨੈਵੀ ਆਈਟਮ ਦੀ ਚੌੜਾਈ ਇੱਕੋ ਜਿਹੀ ਨਹੀਂ ਹੈ।

html
<ul class="nav nav-pills nav-fill">
  <li class="nav-item">
    <a class="nav-link active" aria-current="page" href="#">Active</a>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Much longer nav link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link disabled">Disabled</a>
  </li>
</ul>

<nav>-ਅਧਾਰਿਤ ਨੈਵੀਗੇਸ਼ਨ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਸਮੇਂ , ਤੁਸੀਂ ਸੁਰੱਖਿਅਤ ਢੰਗ ਨਾਲ ਇਸ ਨੂੰ ਛੱਡ ਸਕਦੇ ਹੋ .nav-itemਕਿਉਂਕਿ ਸਿਰਫ਼ .nav-linkਸਟਾਈਲਿੰਗ <a>ਤੱਤਾਂ ਲਈ ਲੋੜੀਂਦਾ ਹੈ।

html
<nav class="nav nav-pills nav-fill">
  <a class="nav-link active" aria-current="page" href="#">Active</a>
  <a class="nav-link" href="#">Much longer nav link</a>
  <a class="nav-link" href="#">Link</a>
  <a class="nav-link disabled">Disabled</a>
</nav>

ਬਰਾਬਰ-ਚੌੜਾਈ ਵਾਲੇ ਤੱਤਾਂ ਲਈ, ਵਰਤੋ .nav-justified। ਸਾਰੀ ਹਰੀਜੱਟਲ ਸਪੇਸ ਨੈਵੀ ਲਿੰਕਸ ਦੁਆਰਾ ਕਬਜ਼ੇ ਵਿੱਚ ਕੀਤੀ ਜਾਵੇਗੀ, ਪਰ .nav-fillਉਪਰੋਕਤ ਦੇ ਉਲਟ, ਹਰ ਨੈਵੀ ਆਈਟਮ ਇੱਕੋ ਚੌੜਾਈ ਹੋਵੇਗੀ।

html
<ul class="nav nav-pills nav-justified">
  <li class="nav-item">
    <a class="nav-link active" aria-current="page" href="#">Active</a>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Much longer nav link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link disabled">Disabled</a>
  </li>
</ul>

-ਅਧਾਰਿਤ ਨੈਵੀਗੇਸ਼ਨ .nav-fillਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ ਉਦਾਹਰਨ ਦੇ ਸਮਾਨ ।<nav>

html
<nav class="nav nav-pills nav-justified">
  <a class="nav-link active" aria-current="page" href="#">Active</a>
  <a class="nav-link" href="#">Much longer nav link</a>
  <a class="nav-link" href="#">Link</a>
  <a class="nav-link disabled">Disabled</a>
</nav>

ਫਲੈਕਸ ਉਪਯੋਗਤਾਵਾਂ ਨਾਲ ਕੰਮ ਕਰਨਾ

ਜੇਕਰ ਤੁਹਾਨੂੰ ਜਵਾਬਦੇਹ ਨੈਵੀ ਭਿੰਨਤਾਵਾਂ ਦੀ ਲੋੜ ਹੈ, ਤਾਂ flexbox ਉਪਯੋਗਤਾਵਾਂ ਦੀ ਇੱਕ ਲੜੀ ਦੀ ਵਰਤੋਂ ਕਰਨ 'ਤੇ ਵਿਚਾਰ ਕਰੋ । ਵਧੇਰੇ ਵਰਬੋਸ ਹੋਣ ਦੇ ਬਾਵਜੂਦ, ਇਹ ਉਪਯੋਗਤਾਵਾਂ ਜਵਾਬਦੇਹ ਬ੍ਰੇਕਪੁਆਇੰਟਸ ਵਿੱਚ ਵਧੇਰੇ ਅਨੁਕੂਲਤਾ ਦੀ ਪੇਸ਼ਕਸ਼ ਕਰਦੀਆਂ ਹਨ। ਹੇਠਾਂ ਦਿੱਤੀ ਉਦਾਹਰਨ ਵਿੱਚ, ਸਾਡੇ nav ਨੂੰ ਸਭ ਤੋਂ ਹੇਠਲੇ ਬ੍ਰੇਕਪੁਆਇੰਟ 'ਤੇ ਸਟੈਕ ਕੀਤਾ ਜਾਵੇਗਾ, ਫਿਰ ਇੱਕ ਲੇਟਵੇਂ ਲੇਆਉਟ ਨੂੰ ਅਨੁਕੂਲਿਤ ਕਰੋ ਜੋ ਛੋਟੇ ਬ੍ਰੇਕਪੁਆਇੰਟ ਤੋਂ ਸ਼ੁਰੂ ਹੋਣ ਵਾਲੀ ਉਪਲਬਧ ਚੌੜਾਈ ਨੂੰ ਭਰਦਾ ਹੈ।

html
<nav class="nav nav-pills flex-column flex-sm-row">
  <a class="flex-sm-fill text-sm-center nav-link active" aria-current="page" href="#">Active</a>
  <a class="flex-sm-fill text-sm-center nav-link" href="#">Longer nav link</a>
  <a class="flex-sm-fill text-sm-center nav-link" href="#">Link</a>
  <a class="flex-sm-fill text-sm-center nav-link disabled">Disabled</a>
</nav>

ਪਹੁੰਚਯੋਗਤਾ ਬਾਰੇ

role="navigation"ਜੇਕਰ ਤੁਸੀਂ ਨੈਵੀਗੇਸ਼ਨ ਪੱਟੀ ਪ੍ਰਦਾਨ ਕਰਨ ਲਈ navs ਦੀ ਵਰਤੋਂ ਕਰ ਰਹੇ ਹੋ, ਤਾਂ ਦੇ ਸਭ ਤੋਂ ਲਾਜ਼ੀਕਲ ਪੇਰੈਂਟ ਕੰਟੇਨਰ ਵਿੱਚ ਇੱਕ ਜੋੜਨਾ ਯਕੀਨੀ ਬਣਾਓ <ul>, ਜਾਂ <nav>ਪੂਰੇ ਨੈਵੀਗੇਸ਼ਨ ਦੇ ਦੁਆਲੇ ਇੱਕ ਤੱਤ ਨੂੰ ਸਮੇਟਣਾ ਯਕੀਨੀ ਬਣਾਓ। ਭੂਮਿਕਾ ਨੂੰ ਆਪਣੇ ਆਪ ਵਿੱਚ ਨਾ ਜੋੜੋ <ul>, ਕਿਉਂਕਿ ਇਹ ਇਸਨੂੰ ਸਹਾਇਕ ਤਕਨੀਕਾਂ ਦੁਆਰਾ ਇੱਕ ਅਸਲ ਸੂਚੀ ਵਜੋਂ ਘੋਸ਼ਿਤ ਕਰਨ ਤੋਂ ਰੋਕਦਾ ਹੈ।

ਨੋਟ ਕਰੋ ਕਿ ਨੈਵੀਗੇਸ਼ਨ ਬਾਰ, ਭਾਵੇਂ .nav-tabsਕਲਾਸ ਦੇ ਨਾਲ ਟੈਬਾਂ ਦੇ ਰੂਪ ਵਿੱਚ ਵਿਜ਼ੂਲੀ ਸਟਾਈਲ ਕੀਤੇ ਜਾਣ , , ਜਾਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਨਹੀਂ ਦਿੱਤੀਆਂ ਜਾਣੀਆਂ ਚਾਹੀਦੀਆਂ ਹਨ। ਇਹ ਸਿਰਫ ਡਾਇਨਾਮਿਕ ਟੈਬਡ ਇੰਟਰਫੇਸਾਂ ਲਈ ਢੁਕਵੇਂ ਹਨ, ਜਿਵੇਂ ਕਿ ARIA ਆਥਰਿੰਗ ਪ੍ਰੈਕਟਿਸ ਗਾਈਡ ਟੈਬ ਪੈਟਰਨ ਵਿੱਚ ਦੱਸਿਆ ਗਿਆ ਹੈ । ਉਦਾਹਰਨ ਲਈ ਇਸ ਭਾਗ ਵਿੱਚ ਡਾਇਨਾਮਿਕ ਟੈਬਡ ਇੰਟਰਫੇਸਾਂ ਲਈ JavaScript ਵਿਵਹਾਰ ਦੇਖੋ । ਡਾਇਨਾਮਿਕ ਟੈਬਡ ਇੰਟਰਫੇਸਾਂ ' ਤੇ ਵਿਸ਼ੇਸ਼ਤਾ ਜ਼ਰੂਰੀ ਨਹੀਂ ਹੈ ਕਿਉਂਕਿ ਸਾਡੀ JavaScript ਸਰਗਰਮ ਟੈਬ 'ਤੇ ਜੋੜ ਕੇ ਚੁਣੀ ਗਈ ਸਥਿਤੀ ਨੂੰ ਹੈਂਡਲ ਕਰਦੀ ਹੈ।role="tablist"role="tab"role="tabpanel"aria-currentaria-selected="true"

ਡ੍ਰੌਪਡਾਊਨ ਦੀ ਵਰਤੋਂ ਕਰਨਾ

ਥੋੜਾ ਜਿਹਾ ਵਾਧੂ HTML ਅਤੇ ਡ੍ਰੌਪਡਾਉਨ JavaScript ਪਲੱਗਇਨ ਦੇ ਨਾਲ ਡ੍ਰੌਪਡਾਉਨ ਮੀਨੂ ਸ਼ਾਮਲ ਕਰੋ ।

ਡ੍ਰੌਪਡਾਊਨ ਵਾਲੀਆਂ ਟੈਬਾਂ

html
<ul class="nav nav-tabs">
  <li class="nav-item">
    <a class="nav-link active" aria-current="page" href="#">Active</a>
  </li>
  <li class="nav-item dropdown">
    <a class="nav-link dropdown-toggle" data-bs-toggle="dropdown" href="#" role="button" aria-expanded="false">Dropdown</a>
    <ul class="dropdown-menu">
      <li><a class="dropdown-item" href="#">Action</a></li>
      <li><a class="dropdown-item" href="#">Another action</a></li>
      <li><a class="dropdown-item" href="#">Something else here</a></li>
      <li><hr class="dropdown-divider"></li>
      <li><a class="dropdown-item" href="#">Separated link</a></li>
    </ul>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link disabled">Disabled</a>
  </li>
</ul>

ਡਰਾਪਡਾਊਨ ਦੇ ਨਾਲ ਗੋਲੀਆਂ

html
<ul class="nav nav-pills">
  <li class="nav-item">
    <a class="nav-link active" aria-current="page" href="#">Active</a>
  </li>
  <li class="nav-item dropdown">
    <a class="nav-link dropdown-toggle" data-bs-toggle="dropdown" href="#" role="button" aria-expanded="false">Dropdown</a>
    <ul class="dropdown-menu">
      <li><a class="dropdown-item" href="#">Action</a></li>
      <li><a class="dropdown-item" href="#">Another action</a></li>
      <li><a class="dropdown-item" href="#">Something else here</a></li>
      <li><hr class="dropdown-divider"></li>
      <li><a class="dropdown-item" href="#">Separated link</a></li>
    </ul>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link disabled">Disabled</a>
  </li>
</ul>

CSS

ਵੇਰੀਏਬਲ

v5.2.0 ਵਿੱਚ ਸ਼ਾਮਲ ਕੀਤਾ ਗਿਆ

ਬੂਟਸਟਰੈਪ ਦੀ ਵਿਕਸਿਤ ਹੋ ਰਹੀ CSS ਵੇਰੀਏਬਲ ਪਹੁੰਚ ਦੇ ਹਿੱਸੇ ਵਜੋਂ, navs ਹੁਣ ਸਥਾਨਕ CSS ਵੇਰੀਏਬਲ ਦੀ ਵਰਤੋਂ .nav, .nav-tabs, ਅਤੇ .nav-pillsਵਧੇ ਹੋਏ ਰੀਅਲ-ਟਾਈਮ ਅਨੁਕੂਲਨ ਲਈ ਕਰਦੇ ਹਨ। CSS ਵੇਰੀਏਬਲ ਲਈ ਮੁੱਲ Sass ਦੁਆਰਾ ਸੈੱਟ ਕੀਤੇ ਗਏ ਹਨ, ਇਸਲਈ Sass ਕਸਟਮਾਈਜ਼ੇਸ਼ਨ ਅਜੇ ਵੀ ਸਮਰਥਿਤ ਹੈ।

.navਬੇਸ ਕਲਾਸ 'ਤੇ :

  --#{$prefix}nav-link-padding-x: #{$nav-link-padding-x};
  --#{$prefix}nav-link-padding-y: #{$nav-link-padding-y};
  @include rfs($nav-link-font-size, --#{$prefix}nav-link-font-size);
  --#{$prefix}nav-link-font-weight: #{$nav-link-font-weight};
  --#{$prefix}nav-link-color: #{$nav-link-color};
  --#{$prefix}nav-link-hover-color: #{$nav-link-hover-color};
  --#{$prefix}nav-link-disabled-color: #{$nav-link-disabled-color};
  

.nav-tabsਸੋਧਕ ਕਲਾਸ 'ਤੇ :

  --#{$prefix}nav-tabs-border-width: #{$nav-tabs-border-width};
  --#{$prefix}nav-tabs-border-color: #{$nav-tabs-border-color};
  --#{$prefix}nav-tabs-border-radius: #{$nav-tabs-border-radius};
  --#{$prefix}nav-tabs-link-hover-border-color: #{$nav-tabs-link-hover-border-color};
  --#{$prefix}nav-tabs-link-active-color: #{$nav-tabs-link-active-color};
  --#{$prefix}nav-tabs-link-active-bg: #{$nav-tabs-link-active-bg};
  --#{$prefix}nav-tabs-link-active-border-color: #{$nav-tabs-link-active-border-color};
  

.nav-pillsਸੋਧਕ ਕਲਾਸ 'ਤੇ :

  --#{$prefix}nav-pills-border-radius: #{$nav-pills-border-radius};
  --#{$prefix}nav-pills-link-active-color: #{$nav-pills-link-active-color};
  --#{$prefix}nav-pills-link-active-bg: #{$nav-pills-link-active-bg};
  

Sass ਵੇਰੀਏਬਲ

$nav-link-padding-y:                .5rem;
$nav-link-padding-x:                1rem;
$nav-link-font-size:                null;
$nav-link-font-weight:              null;
$nav-link-color:                    var(--#{$prefix}link-color);
$nav-link-hover-color:              var(--#{$prefix}link-hover-color);
$nav-link-transition:               color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out;
$nav-link-disabled-color:           $gray-600;

$nav-tabs-border-color:             $gray-300;
$nav-tabs-border-width:             $border-width;
$nav-tabs-border-radius:            $border-radius;
$nav-tabs-link-hover-border-color:  $gray-200 $gray-200 $nav-tabs-border-color;
$nav-tabs-link-active-color:        $gray-700;
$nav-tabs-link-active-bg:           $body-bg;
$nav-tabs-link-active-border-color: $gray-300 $gray-300 $nav-tabs-link-active-bg;

$nav-pills-border-radius:           $border-radius;
$nav-pills-link-active-color:       $component-active-color;
$nav-pills-link-active-bg:          $component-active-bg;

JavaScript ਵਿਵਹਾਰ

ਟੈਬ JavaScript ਪਲੱਗਇਨ ਦੀ ਵਰਤੋਂ ਕਰੋ—ਇਸ ਨੂੰ ਵਿਅਕਤੀਗਤ ਤੌਰ 'ਤੇ ਜਾਂ ਕੰਪਾਇਲ ਕੀਤੀ bootstrap.jsਫਾਈਲ ਰਾਹੀਂ ਸ਼ਾਮਲ ਕਰੋ—ਸਾਡੀਆਂ ਨੇਵੀਗੇਸ਼ਨਲ ਟੈਬਾਂ ਅਤੇ ਗੋਲੀਆਂ ਨੂੰ ਸਥਾਨਕ ਸਮੱਗਰੀ ਦੇ ਟੈਬਬਲ ਪੈਨ ਬਣਾਉਣ ਲਈ ਵਧਾਉਣ ਲਈ।

ਇਹ ਹੋਮ ਟੈਬ ਦੀ ਸੰਬੰਧਿਤ ਸਮੱਗਰੀ ਨਾਲ ਕੁਝ ਪਲੇਸਹੋਲਡਰ ਸਮੱਗਰੀ ਹੈ। ਕਿਸੇ ਹੋਰ ਟੈਬ 'ਤੇ ਕਲਿੱਕ ਕਰਨ ਨਾਲ ਇਸ ਦੀ ਦਿੱਖ ਨੂੰ ਅਗਲੇ ਲਈ ਟੌਗਲ ਕਰ ਦਿੱਤਾ ਜਾਵੇਗਾ। ਟੈਬ JavaScript ਸਮੱਗਰੀ ਦੀ ਦਿੱਖ ਅਤੇ ਸਟਾਈਲਿੰਗ ਨੂੰ ਨਿਯੰਤਰਿਤ ਕਰਨ ਲਈ ਕਲਾਸਾਂ ਨੂੰ ਬਦਲਦੀ ਹੈ। ਤੁਸੀਂ ਇਸਨੂੰ ਟੈਬਾਂ, ਗੋਲੀਆਂ ਅਤੇ ਕਿਸੇ ਵੀ ਹੋਰ .navਸੰਚਾਲਿਤ ਨੇਵੀਗੇਸ਼ਨ ਨਾਲ ਵਰਤ ਸਕਦੇ ਹੋ।

ਇਹ ਕੁਝ ਪਲੇਸਹੋਲਡਰ ਸਮੱਗਰੀ ਹੈ ਜੋ ਪ੍ਰੋਫਾਈਲ ਟੈਬ ਦੀ ਸੰਬੰਧਿਤ ਸਮੱਗਰੀ ਹੈ। ਕਿਸੇ ਹੋਰ ਟੈਬ 'ਤੇ ਕਲਿੱਕ ਕਰਨ ਨਾਲ ਇਸ ਦੀ ਦਿੱਖ ਨੂੰ ਅਗਲੇ ਲਈ ਟੌਗਲ ਕਰ ਦਿੱਤਾ ਜਾਵੇਗਾ। ਟੈਬ JavaScript ਸਮੱਗਰੀ ਦੀ ਦਿੱਖ ਅਤੇ ਸਟਾਈਲਿੰਗ ਨੂੰ ਨਿਯੰਤਰਿਤ ਕਰਨ ਲਈ ਕਲਾਸਾਂ ਨੂੰ ਬਦਲਦੀ ਹੈ। ਤੁਸੀਂ ਇਸਨੂੰ ਟੈਬਾਂ, ਗੋਲੀਆਂ ਅਤੇ ਕਿਸੇ ਵੀ ਹੋਰ .navਸੰਚਾਲਿਤ ਨੇਵੀਗੇਸ਼ਨ ਨਾਲ ਵਰਤ ਸਕਦੇ ਹੋ।

This is some placeholder content the Contact tab's associated content. Clicking another tab will toggle the visibility of this one for the next. The tab JavaScript swaps classes to control the content visibility and styling. You can use it with tabs, pills, and any other .nav-powered navigation.

This is some placeholder content the Disabled tab's associated content.

<ul class="nav nav-tabs" id="myTab" role="tablist">
  <li class="nav-item" role="presentation">
    <button class="nav-link active" id="home-tab" data-bs-toggle="tab" data-bs-target="#home-tab-pane" type="button" role="tab" aria-controls="home-tab-pane" aria-selected="true">Home</button>
  </li>
  <li class="nav-item" role="presentation">
    <button class="nav-link" id="profile-tab" data-bs-toggle="tab" data-bs-target="#profile-tab-pane" type="button" role="tab" aria-controls="profile-tab-pane" aria-selected="false">Profile</button>
  </li>
  <li class="nav-item" role="presentation">
    <button class="nav-link" id="contact-tab" data-bs-toggle="tab" data-bs-target="#contact-tab-pane" type="button" role="tab" aria-controls="contact-tab-pane" aria-selected="false">Contact</button>
  </li>
  <li class="nav-item" role="presentation">
    <button class="nav-link" id="disabled-tab" data-bs-toggle="tab" data-bs-target="#disabled-tab-pane" type="button" role="tab" aria-controls="disabled-tab-pane" aria-selected="false" disabled>Disabled</button>
  </li>
</ul>
<div class="tab-content" id="myTabContent">
  <div class="tab-pane fade show active" id="home-tab-pane" role="tabpanel" aria-labelledby="home-tab" tabindex="0">...</div>
  <div class="tab-pane fade" id="profile-tab-pane" role="tabpanel" aria-labelledby="profile-tab" tabindex="0">...</div>
  <div class="tab-pane fade" id="contact-tab-pane" role="tabpanel" aria-labelledby="contact-tab" tabindex="0">...</div>
  <div class="tab-pane fade" id="disabled-tab-pane" role="tabpanel" aria-labelledby="disabled-tab" tabindex="0">...</div>
</div>

ਤੁਹਾਡੀਆਂ ਲੋੜਾਂ ਨੂੰ ਪੂਰਾ ਕਰਨ ਵਿੱਚ ਮਦਦ ਕਰਨ ਲਈ, ਇਹ <ul>ਉੱਪਰ ਦਰਸਾਏ ਅਨੁਸਾਰ -ਅਧਾਰਿਤ ਮਾਰਕਅੱਪ ਨਾਲ ਕੰਮ ਕਰਦਾ ਹੈ, ਜਾਂ ਕਿਸੇ ਵੀ ਮਨਮਾਨੇ "ਆਪਣੇ ਖੁਦ ਦੇ" ਮਾਰਕਅੱਪ ਨਾਲ ਕੰਮ ਕਰਦਾ ਹੈ। ਨੋਟ ਕਰੋ ਕਿ ਜੇਕਰ ਤੁਸੀਂ ਵਰਤ ਰਹੇ ਹੋ , ਤਾਂ <nav>ਤੁਹਾਨੂੰ ਇਸ ਵਿੱਚ ਸਿੱਧੇ ਤੌਰ 'ਤੇ ਸ਼ਾਮਲ ਨਹੀਂ ਕਰਨਾ ਚਾਹੀਦਾ role="tablist", ਕਿਉਂਕਿ ਇਹ ਇੱਕ ਨੈਵੀਗੇਸ਼ਨ ਲੈਂਡਮਾਰਕ ਵਜੋਂ ਤੱਤ ਦੀ ਮੂਲ ਭੂਮਿਕਾ ਨੂੰ ਓਵਰਰਾਈਡ ਕਰ ਦੇਵੇਗਾ। ਇਸ ਦੀ ਬਜਾਏ, ਇੱਕ ਵਿਕਲਪਿਕ ਤੱਤ (ਹੇਠਾਂ ਦਿੱਤੀ ਗਈ ਉਦਾਹਰਣ ਵਿੱਚ, ਇੱਕ ਸਧਾਰਨ <div>) ਤੇ ਸਵਿਚ ਕਰੋ ਅਤੇ <nav>ਇਸਦੇ ਆਲੇ ਦੁਆਲੇ ਲਪੇਟੋ।

<nav>
  <div class="nav nav-tabs" id="nav-tab" role="tablist">
    <button class="nav-link active" id="nav-home-tab" data-bs-toggle="tab" data-bs-target="#nav-home" type="button" role="tab" aria-controls="nav-home" aria-selected="true">Home</button>
    <button class="nav-link" id="nav-profile-tab" data-bs-toggle="tab" data-bs-target="#nav-profile" type="button" role="tab" aria-controls="nav-profile" aria-selected="false">Profile</button>
    <button class="nav-link" id="nav-contact-tab" data-bs-toggle="tab" data-bs-target="#nav-contact" type="button" role="tab" aria-controls="nav-contact" aria-selected="false">Contact</button>
    <button class="nav-link" id="nav-disabled-tab" data-bs-toggle="tab" data-bs-target="#nav-disabled" type="button" role="tab" aria-controls="nav-disabled" aria-selected="false" disabled>Disabled</button>
  </div>
</nav>
<div class="tab-content" id="nav-tabContent">
  <div class="tab-pane fade show active" id="nav-home" role="tabpanel" aria-labelledby="nav-home-tab" tabindex="0">...</div>
  <div class="tab-pane fade" id="nav-profile" role="tabpanel" aria-labelledby="nav-profile-tab" tabindex="0">...</div>
  <div class="tab-pane fade" id="nav-contact" role="tabpanel" aria-labelledby="nav-contact-tab" tabindex="0">...</div>
  <div class="tab-pane fade" id="nav-disabled" role="tabpanel" aria-labelledby="nav-disabled-tab" tabindex="0">...</div>
</div>

ਟੈਬਸ ਪਲੱਗਇਨ ਗੋਲੀਆਂ ਨਾਲ ਵੀ ਕੰਮ ਕਰਦੀ ਹੈ।

ਇਹ ਹੋਮ ਟੈਬ ਦੀ ਸੰਬੰਧਿਤ ਸਮੱਗਰੀ ਨਾਲ ਕੁਝ ਪਲੇਸਹੋਲਡਰ ਸਮੱਗਰੀ ਹੈ। ਕਿਸੇ ਹੋਰ ਟੈਬ 'ਤੇ ਕਲਿੱਕ ਕਰਨ ਨਾਲ ਇਸ ਦੀ ਦਿੱਖ ਨੂੰ ਅਗਲੇ ਲਈ ਟੌਗਲ ਕਰ ਦਿੱਤਾ ਜਾਵੇਗਾ। ਟੈਬ JavaScript ਸਮੱਗਰੀ ਦੀ ਦਿੱਖ ਅਤੇ ਸਟਾਈਲਿੰਗ ਨੂੰ ਨਿਯੰਤਰਿਤ ਕਰਨ ਲਈ ਕਲਾਸਾਂ ਨੂੰ ਬਦਲਦੀ ਹੈ। ਤੁਸੀਂ ਇਸਨੂੰ ਟੈਬਾਂ, ਗੋਲੀਆਂ ਅਤੇ ਕਿਸੇ ਵੀ ਹੋਰ .navਸੰਚਾਲਿਤ ਨੇਵੀਗੇਸ਼ਨ ਨਾਲ ਵਰਤ ਸਕਦੇ ਹੋ।

This is some placeholder content the Profile tab's associated content. Clicking another tab will toggle the visibility of this one for the next. The tab JavaScript swaps classes to control the content visibility and styling. You can use it with tabs, pills, and any other .nav-powered navigation.

This is some placeholder content the Contact tab's associated content. Clicking another tab will toggle the visibility of this one for the next. The tab JavaScript swaps classes to control the content visibility and styling. You can use it with tabs, pills, and any other .nav-powered navigation.

This is some placeholder content the Disabled tab's associated content.

<ul class="nav nav-pills mb-3" id="pills-tab" role="tablist">
  <li class="nav-item" role="presentation">
    <button class="nav-link active" id="pills-home-tab" data-bs-toggle="pill" data-bs-target="#pills-home" type="button" role="tab" aria-controls="pills-home" aria-selected="true">Home</button>
  </li>
  <li class="nav-item" role="presentation">
    <button class="nav-link" id="pills-profile-tab" data-bs-toggle="pill" data-bs-target="#pills-profile" type="button" role="tab" aria-controls="pills-profile" aria-selected="false">Profile</button>
  </li>
  <li class="nav-item" role="presentation">
    <button class="nav-link" id="pills-contact-tab" data-bs-toggle="pill" data-bs-target="#pills-contact" type="button" role="tab" aria-controls="pills-contact" aria-selected="false">Contact</button>
  </li>
  <li class="nav-item" role="presentation">
    <button class="nav-link" id="pills-disabled-tab" data-bs-toggle="pill" data-bs-target="#pills-disabled" type="button" role="tab" aria-controls="pills-disabled" aria-selected="false" disabled>Disabled</button>
  </li>
</ul>
<div class="tab-content" id="pills-tabContent">
  <div class="tab-pane fade show active" id="pills-home" role="tabpanel" aria-labelledby="pills-home-tab" tabindex="0">...</div>
  <div class="tab-pane fade" id="pills-profile" role="tabpanel" aria-labelledby="pills-profile-tab" tabindex="0">...</div>
  <div class="tab-pane fade" id="pills-contact" role="tabpanel" aria-labelledby="pills-contact-tab" tabindex="0">...</div>
  <div class="tab-pane fade" id="pills-disabled" role="tabpanel" aria-labelledby="pills-disabled-tab" tabindex="0">...</div>
</div>

ਅਤੇ ਲੰਬਕਾਰੀ ਗੋਲੀਆਂ ਦੇ ਨਾਲ. ਆਦਰਸ਼ਕ ਤੌਰ 'ਤੇ, ਲੰਬਕਾਰੀ ਟੈਬਾਂ ਲਈ, ਤੁਹਾਨੂੰ aria-orientation="vertical"ਟੈਬ ਸੂਚੀ ਕੰਟੇਨਰ ਵਿੱਚ ਵੀ ਸ਼ਾਮਲ ਕਰਨਾ ਚਾਹੀਦਾ ਹੈ।

ਇਹ ਹੋਮ ਟੈਬ ਦੀ ਸੰਬੰਧਿਤ ਸਮੱਗਰੀ ਨਾਲ ਕੁਝ ਪਲੇਸਹੋਲਡਰ ਸਮੱਗਰੀ ਹੈ। ਕਿਸੇ ਹੋਰ ਟੈਬ 'ਤੇ ਕਲਿੱਕ ਕਰਨ ਨਾਲ ਇਸ ਦੀ ਦਿੱਖ ਨੂੰ ਅਗਲੇ ਲਈ ਟੌਗਲ ਕਰ ਦਿੱਤਾ ਜਾਵੇਗਾ। ਟੈਬ JavaScript ਸਮੱਗਰੀ ਦੀ ਦਿੱਖ ਅਤੇ ਸਟਾਈਲਿੰਗ ਨੂੰ ਨਿਯੰਤਰਿਤ ਕਰਨ ਲਈ ਕਲਾਸਾਂ ਨੂੰ ਬਦਲਦੀ ਹੈ। ਤੁਸੀਂ ਇਸਨੂੰ ਟੈਬਾਂ, ਗੋਲੀਆਂ ਅਤੇ ਕਿਸੇ ਵੀ ਹੋਰ .navਸੰਚਾਲਿਤ ਨੇਵੀਗੇਸ਼ਨ ਨਾਲ ਵਰਤ ਸਕਦੇ ਹੋ।

This is some placeholder content the Profile tab's associated content. Clicking another tab will toggle the visibility of this one for the next. The tab JavaScript swaps classes to control the content visibility and styling. You can use it with tabs, pills, and any other .nav-powered navigation.

This is some placeholder content the Disabled tab's associated content.

This is some placeholder content the Messages tab's associated content. Clicking another tab will toggle the visibility of this one for the next. The tab JavaScript swaps classes to control the content visibility and styling. You can use it with tabs, pills, and any other .nav-powered navigation.

This is some placeholder content the Settings tab's associated content. Clicking another tab will toggle the visibility of this one for the next. The tab JavaScript swaps classes to control the content visibility and styling. You can use it with tabs, pills, and any other .nav-powered navigation.

<div class="d-flex align-items-start">
  <div class="nav flex-column nav-pills me-3" id="v-pills-tab" role="tablist" aria-orientation="vertical">
    <button class="nav-link active" id="v-pills-home-tab" data-bs-toggle="pill" data-bs-target="#v-pills-home" type="button" role="tab" aria-controls="v-pills-home" aria-selected="true">Home</button>
    <button class="nav-link" id="v-pills-profile-tab" data-bs-toggle="pill" data-bs-target="#v-pills-profile" type="button" role="tab" aria-controls="v-pills-profile" aria-selected="false">Profile</button>
    <button class="nav-link" id="v-pills-disabled-tab" data-bs-toggle="pill" data-bs-target="#v-pills-disabled" type="button" role="tab" aria-controls="v-pills-disabled" aria-selected="false" disabled>Disabled</button>
    <button class="nav-link" id="v-pills-messages-tab" data-bs-toggle="pill" data-bs-target="#v-pills-messages" type="button" role="tab" aria-controls="v-pills-messages" aria-selected="false">Messages</button>
    <button class="nav-link" id="v-pills-settings-tab" data-bs-toggle="pill" data-bs-target="#v-pills-settings" type="button" role="tab" aria-controls="v-pills-settings" aria-selected="false">Settings</button>
  </div>
  <div class="tab-content" id="v-pills-tabContent">
    <div class="tab-pane fade show active" id="v-pills-home" role="tabpanel" aria-labelledby="v-pills-home-tab" tabindex="0">...</div>
    <div class="tab-pane fade" id="v-pills-profile" role="tabpanel" aria-labelledby="v-pills-profile-tab" tabindex="0">...</div>
    <div class="tab-pane fade" id="v-pills-disabled" role="tabpanel" aria-labelledby="v-pills-disabled-tab" tabindex="0">...</div>
    <div class="tab-pane fade" id="v-pills-messages" role="tabpanel" aria-labelledby="v-pills-messages-tab" tabindex="0">...</div>
    <div class="tab-pane fade" id="v-pills-settings" role="tabpanel" aria-labelledby="v-pills-settings-tab" tabindex="0">...</div>
  </div>
</div>

ਪਹੁੰਚਯੋਗਤਾ

ਗਤੀਸ਼ੀਲ ਟੈਬ ਕੀਤੇ ਇੰਟਰਫੇਸ, ਜਿਵੇਂ ਕਿ ARIA ਆਥਰਿੰਗ ਪ੍ਰੈਕਟਿਸਸ ਗਾਈਡ ਟੈਬ ਪੈਟਰਨ ਵਿੱਚ ਦੱਸਿਆ ਗਿਆ ਹੈ, ਉਹਨਾਂ ਦੀ ਬਣਤਰ, ਕਾਰਜਕੁਸ਼ਲਤਾ, ਅਤੇ ਮੌਜੂਦਾ ਸਥਿਤੀ ਨੂੰ ਸਹਾਇਕ ਤਕਨੀਕਾਂ (ਜਿਵੇਂ ਕਿ ਸਕ੍ਰੀਨ ਰੀਡਰ) ਦੇ ਉਪਭੋਗਤਾਵਾਂ ਤੱਕ ਪਹੁੰਚਾਉਣ ਲਈ role="tablist", role="tab", role="tabpanel", ਅਤੇ ਵਾਧੂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ । aria-ਸਭ ਤੋਂ ਵਧੀਆ ਅਭਿਆਸ ਦੇ ਤੌਰ 'ਤੇ, ਅਸੀਂ ਟੈਬਾਂ ਲਈ ਤੱਤ ਵਰਤਣ ਦੀ ਸਿਫ਼ਾਰਸ਼ ਕਰਦੇ ਹਾਂ <button>, ਕਿਉਂਕਿ ਇਹ ਉਹ ਨਿਯੰਤਰਣ ਹਨ ਜੋ ਇੱਕ ਗਤੀਸ਼ੀਲ ਤਬਦੀਲੀ ਨੂੰ ਟਰਿੱਗਰ ਕਰਦੇ ਹਨ, ਨਾ ਕਿ ਨਵੇਂ ਪੰਨੇ ਜਾਂ ਸਥਾਨ 'ਤੇ ਨੈਵੀਗੇਟ ਕਰਨ ਵਾਲੇ ਲਿੰਕਾਂ ਦੀ ਬਜਾਏ।

ARIA ਆਥਰਿੰਗ ਪ੍ਰੈਕਟਿਸਸ ਪੈਟਰਨ ਦੇ ਅਨੁਸਾਰ, ਸਿਰਫ ਮੌਜੂਦਾ ਕਿਰਿਆਸ਼ੀਲ ਟੈਬ ਹੀ ਕੀਬੋਰਡ ਫੋਕਸ ਪ੍ਰਾਪਤ ਕਰਦੀ ਹੈ। ਜਦੋਂ JavaScript ਪਲੱਗਇਨ ਸ਼ੁਰੂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਇਹ tabindex="-1"ਸਾਰੇ ਅਕਿਰਿਆਸ਼ੀਲ ਟੈਬ ਨਿਯੰਤਰਣਾਂ 'ਤੇ ਸੈੱਟ ਹੋ ਜਾਵੇਗਾ। ਇੱਕ ਵਾਰ ਮੌਜੂਦਾ ਸਰਗਰਮ ਟੈਬ ਵਿੱਚ ਫੋਕਸ ਹੋਣ ਤੋਂ ਬਾਅਦ, ਕਰਸਰ ਕੁੰਜੀਆਂ ਪਿਛਲੀ/ਅਗਲੀ ਟੈਬ ਨੂੰ ਸਰਗਰਮ ਕਰਦੀਆਂ ਹਨ, ਪਲੱਗਇਨ ਉਸ ਅਨੁਸਾਰ ਰੋਵਿੰਗtabindex ਨੂੰ ਬਦਲਦੀ ਹੈ । ਹਾਲਾਂਕਿ, ਨੋਟ ਕਰੋ ਕਿ JavaScript ਪਲੱਗਇਨ ਹਰੀਜੱਟਲ ਅਤੇ ਵਰਟੀਕਲ ਟੈਬ ਸੂਚੀਆਂ ਵਿੱਚ ਫਰਕ ਨਹੀਂ ਕਰਦੀ ਹੈ ਜਦੋਂ ਇਹ ਕਰਸਰ ਕੁੰਜੀ ਇੰਟਰੈਕਸ਼ਨਾਂ ਦੀ ਗੱਲ ਆਉਂਦੀ ਹੈ: ਟੈਬ ਸੂਚੀ ਦੀ ਸਥਿਤੀ ਦੀ ਪਰਵਾਹ ਕੀਤੇ ਬਿਨਾਂ, ਉੱਪਰ ਅਤੇ ਖੱਬਾ ਦੋਵੇਂ ਕਰਸਰ ਪਿਛਲੀ ਟੈਬ 'ਤੇ ਜਾਂਦੇ ਹਨ, ਅਤੇ ਹੇਠਾਂ ਅਤੇ ਸੱਜੇ ਕਰਸਰ 'ਤੇ ਜਾਂਦੇ ਹਨ। ਅਗਲੀ ਟੈਬ.

ਆਮ ਤੌਰ 'ਤੇ, ਕੀਬੋਰਡ ਨੈਵੀਗੇਸ਼ਨ ਦੀ ਸਹੂਲਤ ਲਈ, ਟੈਬ ਪੈਨਲਾਂ ਨੂੰ ਵੀ ਫੋਕਸ ਕਰਨ ਯੋਗ ਬਣਾਉਣ ਦੀ ਸਿਫਾਰਸ਼ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਜਦੋਂ ਤੱਕ ਕਿ ਟੈਬ ਪੈਨਲ ਦੇ ਅੰਦਰ ਅਰਥਪੂਰਨ ਸਮੱਗਰੀ ਵਾਲਾ ਪਹਿਲਾ ਤੱਤ ਪਹਿਲਾਂ ਹੀ ਫੋਕਸਯੋਗ ਨਾ ਹੋਵੇ। JavaScript ਪਲੱਗਇਨ ਇਸ ਪਹਿਲੂ ਨੂੰ ਸੰਭਾਲਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਨਹੀਂ ਕਰਦਾ- ਜਿੱਥੇ ਉਚਿਤ ਹੋਵੇ, ਤੁਹਾਨੂੰ tabindex="0"ਆਪਣੇ ਮਾਰਕਅੱਪ ਵਿੱਚ ਸ਼ਾਮਲ ਕਰਕੇ ਸਪਸ਼ਟ ਤੌਰ 'ਤੇ ਆਪਣੇ ਟੈਬ ਪੈਨਲਾਂ ਨੂੰ ਫੋਕਸ ਕਰਨ ਯੋਗ ਬਣਾਉਣ ਦੀ ਲੋੜ ਪਵੇਗੀ।
ਟੈਬ JavaScript ਪਲੱਗਇਨ ਟੈਬਡ ਇੰਟਰਫੇਸਾਂ ਦਾ ਸਮਰਥਨ ਨਹੀਂ ਕਰਦੀ ਹੈ ਜਿਸ ਵਿੱਚ ਡ੍ਰੌਪਡਾਉਨ ਮੀਨੂ ਸ਼ਾਮਲ ਹੁੰਦੇ ਹਨ, ਕਿਉਂਕਿ ਇਹ ਉਪਯੋਗਤਾ ਅਤੇ ਪਹੁੰਚਯੋਗਤਾ ਦੋਵਾਂ ਸਮੱਸਿਆਵਾਂ ਦਾ ਕਾਰਨ ਬਣਦੇ ਹਨ। ਉਪਯੋਗਤਾ ਦੇ ਦ੍ਰਿਸ਼ਟੀਕੋਣ ਤੋਂ, ਇਹ ਤੱਥ ਕਿ ਵਰਤਮਾਨ ਵਿੱਚ ਪ੍ਰਦਰਸ਼ਿਤ ਟੈਬ ਦਾ ਟਰਿੱਗਰ ਤੱਤ ਤੁਰੰਤ ਦਿਖਾਈ ਨਹੀਂ ਦਿੰਦਾ (ਕਿਉਂਕਿ ਇਹ ਬੰਦ ਡ੍ਰੌਪਡਾਉਨ ਮੀਨੂ ਦੇ ਅੰਦਰ ਹੈ) ਉਲਝਣ ਦਾ ਕਾਰਨ ਬਣ ਸਕਦਾ ਹੈ। ਪਹੁੰਚਯੋਗਤਾ ਦੇ ਦ੍ਰਿਸ਼ਟੀਕੋਣ ਤੋਂ, ਵਰਤਮਾਨ ਵਿੱਚ ਇਸ ਕਿਸਮ ਦੇ ਨਿਰਮਾਣ ਨੂੰ ਇੱਕ ਮਿਆਰੀ WAI ARIA ਪੈਟਰਨ ਵਿੱਚ ਮੈਪ ਕਰਨ ਦਾ ਕੋਈ ਸਮਝਦਾਰ ਤਰੀਕਾ ਨਹੀਂ ਹੈ, ਮਤਲਬ ਕਿ ਇਸਨੂੰ ਸਹਾਇਕ ਤਕਨਾਲੋਜੀਆਂ ਦੇ ਉਪਭੋਗਤਾਵਾਂ ਲਈ ਆਸਾਨੀ ਨਾਲ ਸਮਝਣ ਯੋਗ ਨਹੀਂ ਬਣਾਇਆ ਜਾ ਸਕਦਾ ਹੈ।

ਡਾਟਾ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਦੀ ਵਰਤੋਂ ਕਰਨਾ

data-bs-toggle="tab"ਤੁਸੀਂ ਸਿਰਫ਼ ਨਿਰਧਾਰਿਤ ਕਰਕੇ ਜਾਂ data-bs-toggle="pill"ਕਿਸੇ ਤੱਤ 'ਤੇ ਜਾਵਾ ਸਕ੍ਰਿਪਟ ਲਿਖੇ ਬਿਨਾਂ ਇੱਕ ਟੈਬ ਜਾਂ ਪਿਲ ਨੈਵੀਗੇਸ਼ਨ ਨੂੰ ਸਰਗਰਮ ਕਰ ਸਕਦੇ ਹੋ । .nav-tabs'ਤੇ ਜਾਂ 'ਤੇ ਇਹਨਾਂ ਡੇਟਾ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਦੀ ਵਰਤੋਂ ਕਰੋ .nav-pills

<!-- Nav tabs -->
<ul class="nav nav-tabs" id="myTab" role="tablist">
  <li class="nav-item" role="presentation">
    <button class="nav-link active" id="home-tab" data-bs-toggle="tab" data-bs-target="#home" type="button" role="tab" aria-controls="home" aria-selected="true">Home</button>
  </li>
  <li class="nav-item" role="presentation">
    <button class="nav-link" id="profile-tab" data-bs-toggle="tab" data-bs-target="#profile" type="button" role="tab" aria-controls="profile" aria-selected="false">Profile</button>
  </li>
  <li class="nav-item" role="presentation">
    <button class="nav-link" id="messages-tab" data-bs-toggle="tab" data-bs-target="#messages" type="button" role="tab" aria-controls="messages" aria-selected="false">Messages</button>
  </li>
  <li class="nav-item" role="presentation">
    <button class="nav-link" id="settings-tab" data-bs-toggle="tab" data-bs-target="#settings" type="button" role="tab" aria-controls="settings" aria-selected="false">Settings</button>
  </li>
</ul>

<!-- Tab panes -->
<div class="tab-content">
  <div class="tab-pane active" id="home" role="tabpanel" aria-labelledby="home-tab" tabindex="0">...</div>
  <div class="tab-pane" id="profile" role="tabpanel" aria-labelledby="profile-tab" tabindex="0">...</div>
  <div class="tab-pane" id="messages" role="tabpanel" aria-labelledby="messages-tab" tabindex="0">...</div>
  <div class="tab-pane" id="settings" role="tabpanel" aria-labelledby="settings-tab" tabindex="0">...</div>
</div>

JavaScript ਰਾਹੀਂ

JavaScript ਰਾਹੀਂ ਟੈਬਬਲ ਟੈਬਾਂ ਨੂੰ ਸਮਰੱਥ ਬਣਾਓ (ਹਰੇਕ ਟੈਬ ਨੂੰ ਵੱਖਰੇ ਤੌਰ 'ਤੇ ਕਿਰਿਆਸ਼ੀਲ ਕਰਨ ਦੀ ਲੋੜ ਹੈ):

const triggerTabList = document.querySelectorAll('#myTab button')
triggerTabList.forEach(triggerEl => {
  const tabTrigger = new bootstrap.Tab(triggerEl)

  triggerEl.addEventListener('click', event => {
    event.preventDefault()
    tabTrigger.show()
  })
})

ਤੁਸੀਂ ਵਿਅਕਤੀਗਤ ਟੈਬਾਂ ਨੂੰ ਕਈ ਤਰੀਕਿਆਂ ਨਾਲ ਸਰਗਰਮ ਕਰ ਸਕਦੇ ਹੋ:

const triggerEl = document.querySelector('#myTab button[data-bs-target="#profile"]')
bootstrap.Tab.getInstance(triggerEl).show() // Select tab by name

const triggerFirstTabEl = document.querySelector('#myTab li:first-child button')
bootstrap.Tab.getInstance(triggerFirstTabEl).show() // Select first tab

ਫੇਡ ਪ੍ਰਭਾਵ

ਟੈਬਾਂ ਨੂੰ ਫੇਡ ਇਨ ਕਰਨ ਲਈ, .fadeਹਰੇਕ ਵਿੱਚ ਜੋੜੋ .tab-pane। ਪਹਿਲੇ ਟੈਬ ਪੈਨ ਨੂੰ ਵੀ .showਸ਼ੁਰੂਆਤੀ ਸਮੱਗਰੀ ਨੂੰ ਦ੍ਰਿਸ਼ਮਾਨ ਬਣਾਉਣਾ ਚਾਹੀਦਾ ਹੈ।

<div class="tab-content">
  <div class="tab-pane fade show active" id="home" role="tabpanel" aria-labelledby="home-tab" tabindex="0">...</div>
  <div class="tab-pane fade" id="profile" role="tabpanel" aria-labelledby="profile-tab" tabindex="0">...</div>
  <div class="tab-pane fade" id="messages" role="tabpanel" aria-labelledby="messages-tab" tabindex="0">...</div>
  <div class="tab-pane fade" id="settings" role="tabpanel" aria-labelledby="settings-tab" tabindex="0">...</div>
</div>

ਢੰਗ

ਅਸਿੰਕ੍ਰੋਨਸ ਵਿਧੀਆਂ ਅਤੇ ਪਰਿਵਰਤਨ

ਸਾਰੀਆਂ API ਵਿਧੀਆਂ ਅਸਿੰਕ੍ਰੋਨਸ ਹਨ ਅਤੇ ਇੱਕ ਤਬਦੀਲੀ ਸ਼ੁਰੂ ਕਰਦੀਆਂ ਹਨ । ਪਰਿਵਰਤਨ ਸ਼ੁਰੂ ਹੁੰਦੇ ਹੀ ਉਹ ਕਾਲਰ ਕੋਲ ਵਾਪਸ ਆਉਂਦੇ ਹਨ ਪਰ ਇਸ ਦੇ ਖਤਮ ਹੋਣ ਤੋਂ ਪਹਿਲਾਂ । ਇਸ ਤੋਂ ਇਲਾਵਾ, ਪਰਿਵਰਤਨ ਕਰਨ ਵਾਲੇ ਹਿੱਸੇ 'ਤੇ ਇੱਕ ਢੰਗ ਕਾਲ ਨੂੰ ਅਣਡਿੱਠ ਕੀਤਾ ਜਾਵੇਗਾ

ਹੋਰ ਜਾਣਕਾਰੀ ਲਈ ਸਾਡੇ JavaScript ਦਸਤਾਵੇਜ਼ ਵੇਖੋ

ਤੁਹਾਡੀ ਸਮਗਰੀ ਨੂੰ ਇੱਕ ਟੈਬ ਤੱਤ ਵਜੋਂ ਸਰਗਰਮ ਕਰਦਾ ਹੈ।

ਤੁਸੀਂ ਕੰਸਟਰਕਟਰ ਨਾਲ ਇੱਕ ਟੈਬ ਉਦਾਹਰਨ ਬਣਾ ਸਕਦੇ ਹੋ, ਉਦਾਹਰਨ ਲਈ:

const bsTab = new bootstrap.Tab('#myTab')
ਢੰਗ ਵਰਣਨ
dispose ਕਿਸੇ ਤੱਤ ਦੀ ਟੈਬ ਨੂੰ ਨਸ਼ਟ ਕਰਦਾ ਹੈ।
getInstance ਸਥਿਰ ਵਿਧੀ ਜੋ ਤੁਹਾਨੂੰ ਇੱਕ DOM ਤੱਤ ਨਾਲ ਸੰਬੰਧਿਤ ਟੈਬ ਉਦਾਹਰਨ ਪ੍ਰਾਪਤ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦੀ ਹੈ, ਤੁਸੀਂ ਇਸਨੂੰ ਇਸ ਤਰ੍ਹਾਂ ਵਰਤ ਸਕਦੇ ਹੋ: bootstrap.Tab.getInstance(element).
getOrCreateInstance ਸਥਿਰ ਵਿਧੀ ਜੋ ਇੱਕ DOM ਐਲੀਮੈਂਟ ਨਾਲ ਸੰਬੰਧਿਤ ਇੱਕ ਟੈਬ ਉਦਾਹਰਨ ਵਾਪਸ ਕਰਦੀ ਹੈ ਜਾਂ ਇੱਕ ਨਵਾਂ ਬਣਾਉਦੀ ਹੈ ਜੇਕਰ ਇਹ ਸ਼ੁਰੂ ਨਹੀਂ ਕੀਤੀ ਗਈ ਸੀ। ਤੁਸੀਂ ਇਸਨੂੰ ਇਸ ਤਰ੍ਹਾਂ ਵਰਤ ਸਕਦੇ ਹੋ: bootstrap.Tab.getOrCreateInstance(element).
show ਦਿੱਤੀ ਗਈ ਟੈਬ ਨੂੰ ਚੁਣਦਾ ਹੈ ਅਤੇ ਇਸਦੇ ਸੰਬੰਧਿਤ ਪੈਨ ਨੂੰ ਦਿਖਾਉਂਦਾ ਹੈ। ਕੋਈ ਹੋਰ ਟੈਬ ਜੋ ਪਹਿਲਾਂ ਚੁਣੀ ਗਈ ਸੀ, ਅਣ-ਚੁਣਾਈ ਹੋ ਜਾਂਦੀ ਹੈ ਅਤੇ ਇਸ ਨਾਲ ਸਬੰਧਿਤ ਪੈਨ ਲੁਕ ਜਾਂਦਾ ਹੈ। ਟੈਬ ਪੈਨ ਦੇ ਅਸਲ ਵਿੱਚ ਵਿਖਾਏ ਜਾਣ ਤੋਂ ਪਹਿਲਾਂ ਕਾਲਰ ਨੂੰ ਵਾਪਸ ਕਰਦਾ ਹੈ (ਭਾਵ shown.bs.tabਘਟਨਾ ਵਾਪਰਨ ਤੋਂ ਪਹਿਲਾਂ)।

ਸਮਾਗਮ

ਇੱਕ ਨਵੀਂ ਟੈਬ ਦਿਖਾਉਂਦੇ ਸਮੇਂ, ਇਵੈਂਟਸ ਹੇਠਾਂ ਦਿੱਤੇ ਕ੍ਰਮ ਵਿੱਚ ਚਾਲੂ ਹੁੰਦੇ ਹਨ:

  1. hide.bs.tab(ਮੌਜੂਦਾ ਸਰਗਰਮ ਟੈਬ 'ਤੇ)
  2. show.bs.tab(ਦਿਖਾਈ ਜਾਣ ਵਾਲੀ ਟੈਬ 'ਤੇ)
  3. hidden.bs.tabhide.bs.tab(ਪਿਛਲੀ ਸਰਗਰਮ ਟੈਬ 'ਤੇ, ਘਟਨਾ ਲਈ ਉਹੀ )
  4. shown.bs.tabshow.bs.tab(ਨਵੇਂ-ਸਰਗਰਮ ਹੁਣੇ-ਦਿਖਾਈ ਗਈ ਟੈਬ 'ਤੇ, ਘਟਨਾ ਲਈ ਉਹੀ )

ਜੇਕਰ ਕੋਈ ਟੈਬ ਪਹਿਲਾਂ ਹੀ ਕਿਰਿਆਸ਼ੀਲ ਨਹੀਂ ਸੀ, ਤਾਂ hide.bs.tabਅਤੇ hidden.bs.tabਇਵੈਂਟਾਂ ਨੂੰ ਚਾਲੂ ਨਹੀਂ ਕੀਤਾ ਜਾਵੇਗਾ।

ਘਟਨਾ ਦੀ ਕਿਸਮ ਵਰਣਨ
hide.bs.tab ਇਹ ਇਵੈਂਟ ਉਦੋਂ ਚਾਲੂ ਹੁੰਦਾ ਹੈ ਜਦੋਂ ਇੱਕ ਨਵੀਂ ਟੈਬ ਦਿਖਾਈ ਜਾਂਦੀ ਹੈ (ਅਤੇ ਇਸ ਤਰ੍ਹਾਂ ਪਿਛਲੀ ਕਿਰਿਆਸ਼ੀਲ ਟੈਬ ਨੂੰ ਲੁਕਾਇਆ ਜਾਣਾ ਹੁੰਦਾ ਹੈ)। ਕ੍ਰਮਵਾਰ ਮੌਜੂਦਾ ਕਿਰਿਆਸ਼ੀਲ ਟੈਬ ਅਤੇ ਨਵੀਂ ਛੇਤੀ ਹੀ ਸਰਗਰਮ ਹੋਣ ਵਾਲੀ ਟੈਬ ਦੀ ਵਰਤੋਂ event.targetਅਤੇ ਨਿਸ਼ਾਨਾ ਬਣਾਉਣ ਲਈ।event.relatedTarget
hidden.bs.tab ਇਹ ਇਵੈਂਟ ਇੱਕ ਨਵੀਂ ਟੈਬ ਦਿਖਾਏ ਜਾਣ ਤੋਂ ਬਾਅਦ ਚਾਲੂ ਹੁੰਦਾ ਹੈ (ਅਤੇ ਇਸ ਤਰ੍ਹਾਂ ਪਿਛਲੀ ਕਿਰਿਆਸ਼ੀਲ ਟੈਬ ਲੁਕ ਜਾਂਦੀ ਹੈ)। ਕ੍ਰਮਵਾਰ ਪਿਛਲੀ ਐਕਟਿਵ ਟੈਬ ਅਤੇ ਨਵੀਂ ਐਕਟਿਵ ਟੈਬ ਦੀ ਵਰਤੋਂ ਕਰੋ event.targetਅਤੇ ਨਿਸ਼ਾਨਾ ਬਣਾਓ।event.relatedTarget
show.bs.tab ਇਹ ਇਵੈਂਟ ਟੈਬ ਸ਼ੋਅ 'ਤੇ ਫਾਇਰ ਕਰਦਾ ਹੈ, ਪਰ ਨਵੀਂ ਟੈਬ ਦਿਖਾਈ ਦੇਣ ਤੋਂ ਪਹਿਲਾਂ। ਕ੍ਰਮਵਾਰ ਕਿਰਿਆਸ਼ੀਲ ਟੈਬ ਅਤੇ ਪਿਛਲੀ ਕਿਰਿਆਸ਼ੀਲ ਟੈਬ (ਜੇ ਉਪਲਬਧ ਹੋਵੇ) ਨੂੰ ਨਿਸ਼ਾਨਾ ਬਣਾਉਣ ਲਈ ਵਰਤੋਂ event.targetਅਤੇ ਨਿਸ਼ਾਨਾ ਬਣਾਓ।event.relatedTarget
shown.bs.tab ਇਹ ਇਵੈਂਟ ਇੱਕ ਟੈਬ ਦਿਖਾਏ ਜਾਣ ਤੋਂ ਬਾਅਦ ਟੈਬ ਸ਼ੋਅ 'ਤੇ ਫਾਇਰ ਕਰਦਾ ਹੈ। ਕ੍ਰਮਵਾਰ ਕਿਰਿਆਸ਼ੀਲ ਟੈਬ ਅਤੇ ਪਿਛਲੀ ਕਿਰਿਆਸ਼ੀਲ ਟੈਬ (ਜੇ ਉਪਲਬਧ ਹੋਵੇ) ਨੂੰ ਨਿਸ਼ਾਨਾ ਬਣਾਉਣ ਲਈ ਵਰਤੋਂ event.targetਅਤੇ ਨਿਸ਼ਾਨਾ ਬਣਾਓ।event.relatedTarget
const tabEl = document.querySelector('button[data-bs-toggle="tab"]')
tabEl.addEventListener('shown.bs.tab', event => {
  event.target // newly activated tab
  event.relatedTarget // previous active tab
})