Navs ਅਤੇ ਟੈਬਾਂ
ਬੂਟਸਟਰੈਪ ਦੇ ਸ਼ਾਮਲ ਨੈਵੀਗੇਸ਼ਨ ਕੰਪੋਨੈਂਟਸ ਦੀ ਵਰਤੋਂ ਕਰਨ ਲਈ ਦਸਤਾਵੇਜ਼ ਅਤੇ ਉਦਾਹਰਨਾਂ।
ਅਧਾਰ ਨੈਵ
.nav
ਬੂਟਸਟਰੈਪ ਵਿੱਚ ਉਪਲਬਧ ਨੈਵੀਗੇਸ਼ਨ ਬੇਸ ਕਲਾਸ ਤੋਂ ਸਰਗਰਮ ਅਤੇ ਅਯੋਗ ਅਵਸਥਾਵਾਂ ਤੱਕ, ਆਮ ਮਾਰਕਅਪ ਅਤੇ ਸ਼ੈਲੀਆਂ ਨੂੰ ਸਾਂਝਾ ਕਰਦਾ ਹੈ। ਹਰੇਕ ਸ਼ੈਲੀ ਦੇ ਵਿਚਕਾਰ ਅਦਲਾ-ਬਦਲੀ ਕਰਨ ਲਈ ਸੋਧਕ ਕਲਾਸਾਂ ਨੂੰ ਸਵੈਪ ਕਰੋ।
ਬੇਸ .nav
ਕੰਪੋਨੈਂਟ ਫਲੈਕਸਬਾਕਸ ਨਾਲ ਬਣਾਇਆ ਗਿਆ ਹੈ ਅਤੇ ਹਰ ਕਿਸਮ ਦੇ ਨੈਵੀਗੇਸ਼ਨ ਕੰਪੋਨੈਂਟ ਬਣਾਉਣ ਲਈ ਇੱਕ ਮਜ਼ਬੂਤ ਬੁਨਿਆਦ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ। ਇਸ ਵਿੱਚ ਕੁਝ ਸਟਾਈਲ ਓਵਰਰਾਈਡ (ਸੂਚੀਆਂ ਨਾਲ ਕੰਮ ਕਰਨ ਲਈ), ਵੱਡੇ ਹਿੱਟ ਖੇਤਰਾਂ ਲਈ ਕੁਝ ਲਿੰਕ ਪੈਡਿੰਗ, ਅਤੇ ਬੁਨਿਆਦੀ ਅਸਮਰਥਿਤ ਸਟਾਈਲਿੰਗ ਸ਼ਾਮਲ ਹਨ।
ਬੇਸ ਕੰਪੋਨੈਂਟ ਵਿੱਚ ਕੋਈ ਰਾਜ .nav
ਸ਼ਾਮਲ ਨਹੀਂ ਹੁੰਦਾ । .active
ਨਿਮਨਲਿਖਤ ਉਦਾਹਰਨਾਂ ਵਿੱਚ ਕਲਾਸ ਸ਼ਾਮਲ ਹੈ, ਮੁੱਖ ਤੌਰ 'ਤੇ ਇਹ ਦਰਸਾਉਣ ਲਈ ਕਿ ਇਹ ਵਿਸ਼ੇਸ਼ ਕਲਾਸ ਕਿਸੇ ਵਿਸ਼ੇਸ਼ ਸਟਾਈਲਿੰਗ ਨੂੰ ਚਾਲੂ ਨਹੀਂ ਕਰਦੀ ਹੈ।
ਕਿਰਿਆਸ਼ੀਲ ਸਥਿਤੀ ਨੂੰ ਸਹਾਇਕ ਤਕਨਾਲੋਜੀਆਂ ਤੱਕ ਪਹੁੰਚਾਉਣ ਲਈ, aria-current
ਵਿਸ਼ੇਸ਼ਤਾ ਦੀ ਵਰਤੋਂ ਕਰੋ — page
ਮੌਜੂਦਾ ਪੰਨੇ ਲਈ ਮੁੱਲ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ, ਜਾਂ true
ਇੱਕ ਸੈੱਟ ਵਿੱਚ ਮੌਜੂਦਾ ਆਈਟਮ ਲਈ।
<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>
.nav
display: flex
<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
:
<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
:
<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
)।
<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>
ਹੈ।
<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 ਪਲੱਗਇਨ ਨਾਲ ਟੈਬਬਲ ਖੇਤਰ ਬਣਾਉਣ ਲਈ ਇਹਨਾਂ ਦੀ ਵਰਤੋਂ ਕਰੋ ।
<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
ਬਜਾਏ ਵਰਤੋਂ:
<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-item
s ਨਾਲ ਸਾਰੀ ਉਪਲਬਧ ਥਾਂ ਨੂੰ ਅਨੁਪਾਤਕ ਤੌਰ 'ਤੇ ਭਰਨ ਲਈ, ਵਰਤੋ .nav-fill
। ਧਿਆਨ ਦਿਓ ਕਿ ਸਾਰੀ ਹਰੀਜੱਟਲ ਸਪੇਸ ਉੱਤੇ ਕਬਜ਼ਾ ਹੈ, ਪਰ ਹਰ ਨੈਵੀ ਆਈਟਮ ਦੀ ਚੌੜਾਈ ਇੱਕੋ ਜਿਹੀ ਨਹੀਂ ਹੈ।
<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>
ਤੱਤਾਂ ਲਈ ਲੋੜੀਂਦਾ ਹੈ।
<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
ਉਪਰੋਕਤ ਦੇ ਉਲਟ, ਹਰ ਨੈਵੀ ਆਈਟਮ ਇੱਕੋ ਚੌੜਾਈ ਹੋਵੇਗੀ।
<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>
<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 ਨੂੰ ਸਭ ਤੋਂ ਹੇਠਲੇ ਬ੍ਰੇਕਪੁਆਇੰਟ 'ਤੇ ਸਟੈਕ ਕੀਤਾ ਜਾਵੇਗਾ, ਫਿਰ ਇੱਕ ਲੇਟਵੇਂ ਲੇਆਉਟ ਨੂੰ ਅਨੁਕੂਲਿਤ ਕਰੋ ਜੋ ਛੋਟੇ ਬ੍ਰੇਕਪੁਆਇੰਟ ਤੋਂ ਸ਼ੁਰੂ ਹੋਣ ਵਾਲੀ ਉਪਲਬਧ ਚੌੜਾਈ ਨੂੰ ਭਰਦਾ ਹੈ।
<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-current
aria-selected="true"
ਡ੍ਰੌਪਡਾਊਨ ਦੀ ਵਰਤੋਂ ਕਰਨਾ
ਥੋੜਾ ਜਿਹਾ ਵਾਧੂ HTML ਅਤੇ ਡ੍ਰੌਪਡਾਉਨ JavaScript ਪਲੱਗਇਨ ਦੇ ਨਾਲ ਡ੍ਰੌਪਡਾਉਨ ਮੀਨੂ ਸ਼ਾਮਲ ਕਰੋ ।
ਡ੍ਰੌਪਡਾਊਨ ਵਾਲੀਆਂ ਟੈਬਾਂ
<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>
ਡਰਾਪਡਾਊਨ ਦੇ ਨਾਲ ਗੋਲੀਆਂ
<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 ਪਲੱਗਇਨ ਹਰੀਜੱਟਲ ਅਤੇ ਵਰਟੀਕਲ ਟੈਬ ਸੂਚੀਆਂ ਵਿੱਚ ਫਰਕ ਨਹੀਂ ਕਰਦੀ ਹੈ ਜਦੋਂ ਇਹ ਕਰਸਰ ਕੁੰਜੀ ਇੰਟਰੈਕਸ਼ਨਾਂ ਦੀ ਗੱਲ ਆਉਂਦੀ ਹੈ: ਟੈਬ ਸੂਚੀ ਦੀ ਸਥਿਤੀ ਦੀ ਪਰਵਾਹ ਕੀਤੇ ਬਿਨਾਂ, ਉੱਪਰ ਅਤੇ ਖੱਬਾ ਦੋਵੇਂ ਕਰਸਰ ਪਿਛਲੀ ਟੈਬ 'ਤੇ ਜਾਂਦੇ ਹਨ, ਅਤੇ ਹੇਠਾਂ ਅਤੇ ਸੱਜੇ ਕਰਸਰ 'ਤੇ ਜਾਂਦੇ ਹਨ। ਅਗਲੀ ਟੈਬ.
tabindex="0"
ਆਪਣੇ ਮਾਰਕਅੱਪ ਵਿੱਚ ਸ਼ਾਮਲ ਕਰਕੇ ਸਪਸ਼ਟ ਤੌਰ 'ਤੇ ਆਪਣੇ ਟੈਬ ਪੈਨਲਾਂ ਨੂੰ ਫੋਕਸ ਕਰਨ ਯੋਗ ਬਣਾਉਣ ਦੀ ਲੋੜ ਪਵੇਗੀ।
ਡਾਟਾ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਦੀ ਵਰਤੋਂ ਕਰਨਾ
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 ਵਿਧੀਆਂ ਅਸਿੰਕ੍ਰੋਨਸ ਹਨ ਅਤੇ ਇੱਕ ਤਬਦੀਲੀ ਸ਼ੁਰੂ ਕਰਦੀਆਂ ਹਨ । ਪਰਿਵਰਤਨ ਸ਼ੁਰੂ ਹੁੰਦੇ ਹੀ ਉਹ ਕਾਲਰ ਕੋਲ ਵਾਪਸ ਆਉਂਦੇ ਹਨ ਪਰ ਇਸ ਦੇ ਖਤਮ ਹੋਣ ਤੋਂ ਪਹਿਲਾਂ । ਇਸ ਤੋਂ ਇਲਾਵਾ, ਪਰਿਵਰਤਨ ਕਰਨ ਵਾਲੇ ਹਿੱਸੇ 'ਤੇ ਇੱਕ ਢੰਗ ਕਾਲ ਨੂੰ ਅਣਡਿੱਠ ਕੀਤਾ ਜਾਵੇਗਾ ।
ਤੁਹਾਡੀ ਸਮਗਰੀ ਨੂੰ ਇੱਕ ਟੈਬ ਤੱਤ ਵਜੋਂ ਸਰਗਰਮ ਕਰਦਾ ਹੈ।
ਤੁਸੀਂ ਕੰਸਟਰਕਟਰ ਨਾਲ ਇੱਕ ਟੈਬ ਉਦਾਹਰਨ ਬਣਾ ਸਕਦੇ ਹੋ, ਉਦਾਹਰਨ ਲਈ:
const bsTab = new bootstrap.Tab('#myTab')
ਢੰਗ | ਵਰਣਨ |
---|---|
dispose |
ਕਿਸੇ ਤੱਤ ਦੀ ਟੈਬ ਨੂੰ ਨਸ਼ਟ ਕਰਦਾ ਹੈ। |
getInstance |
ਸਥਿਰ ਵਿਧੀ ਜੋ ਤੁਹਾਨੂੰ ਇੱਕ DOM ਤੱਤ ਨਾਲ ਸੰਬੰਧਿਤ ਟੈਬ ਉਦਾਹਰਨ ਪ੍ਰਾਪਤ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦੀ ਹੈ, ਤੁਸੀਂ ਇਸਨੂੰ ਇਸ ਤਰ੍ਹਾਂ ਵਰਤ ਸਕਦੇ ਹੋ: bootstrap.Tab.getInstance(element) . |
getOrCreateInstance |
ਸਥਿਰ ਵਿਧੀ ਜੋ ਇੱਕ DOM ਐਲੀਮੈਂਟ ਨਾਲ ਸੰਬੰਧਿਤ ਇੱਕ ਟੈਬ ਉਦਾਹਰਨ ਵਾਪਸ ਕਰਦੀ ਹੈ ਜਾਂ ਇੱਕ ਨਵਾਂ ਬਣਾਉਦੀ ਹੈ ਜੇਕਰ ਇਹ ਸ਼ੁਰੂ ਨਹੀਂ ਕੀਤੀ ਗਈ ਸੀ। ਤੁਸੀਂ ਇਸਨੂੰ ਇਸ ਤਰ੍ਹਾਂ ਵਰਤ ਸਕਦੇ ਹੋ: bootstrap.Tab.getOrCreateInstance(element) . |
show |
ਦਿੱਤੀ ਗਈ ਟੈਬ ਨੂੰ ਚੁਣਦਾ ਹੈ ਅਤੇ ਇਸਦੇ ਸੰਬੰਧਿਤ ਪੈਨ ਨੂੰ ਦਿਖਾਉਂਦਾ ਹੈ। ਕੋਈ ਹੋਰ ਟੈਬ ਜੋ ਪਹਿਲਾਂ ਚੁਣੀ ਗਈ ਸੀ, ਅਣ-ਚੁਣਾਈ ਹੋ ਜਾਂਦੀ ਹੈ ਅਤੇ ਇਸ ਨਾਲ ਸਬੰਧਿਤ ਪੈਨ ਲੁਕ ਜਾਂਦਾ ਹੈ। ਟੈਬ ਪੈਨ ਦੇ ਅਸਲ ਵਿੱਚ ਵਿਖਾਏ ਜਾਣ ਤੋਂ ਪਹਿਲਾਂ ਕਾਲਰ ਨੂੰ ਵਾਪਸ ਕਰਦਾ ਹੈ (ਭਾਵ shown.bs.tab ਘਟਨਾ ਵਾਪਰਨ ਤੋਂ ਪਹਿਲਾਂ)। |
ਸਮਾਗਮ
ਇੱਕ ਨਵੀਂ ਟੈਬ ਦਿਖਾਉਂਦੇ ਸਮੇਂ, ਇਵੈਂਟਸ ਹੇਠਾਂ ਦਿੱਤੇ ਕ੍ਰਮ ਵਿੱਚ ਚਾਲੂ ਹੁੰਦੇ ਹਨ:
hide.bs.tab
(ਮੌਜੂਦਾ ਸਰਗਰਮ ਟੈਬ 'ਤੇ)show.bs.tab
(ਦਿਖਾਈ ਜਾਣ ਵਾਲੀ ਟੈਬ 'ਤੇ)hidden.bs.tab
hide.bs.tab
(ਪਿਛਲੀ ਸਰਗਰਮ ਟੈਬ 'ਤੇ, ਘਟਨਾ ਲਈ ਉਹੀ )shown.bs.tab
show.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
})