Pills
Button-like navigation component.
Basic example
'use client'
import Nav from 'react-bootstrap/Nav'
import NavItem from 'react-bootstrap/NavItem'
import NavLink from 'react-bootstrap/NavLink'
export default function PillsBasicDemo() {
return (
<Nav variant="pills" defaultActiveKey="link-1" onSelect={(eventKey) => alert(`Selected ${eventKey}`)}>
<NavItem>
<NavLink eventKey="link-1" href="#link-1">
Active
</NavLink>
</NavItem>
<NavItem>
<NavLink eventKey="link-2" href="#link-2">
Link
</NavLink>
</NavItem>
<NavItem>
<NavLink as="button" eventKey="button">
Button
</NavLink>
</NavItem>
<NavItem>
<NavLink as="button" eventKey="disabled" disabled>Disabled</NavLink>
</NavItem>
</Nav>
)
}
Next.js link example
import Link from 'next/link'
import Nav from 'react-bootstrap/Nav'
import NavItem from 'react-bootstrap/NavItem'
import NavLink from 'react-bootstrap/NavLink'
export default function PillsNextLinkDemo() {
return (
<Nav variant="pills" defaultActiveKey="#link-1">
<NavItem>
<NavLink as={Link} href="#link-1">
Active
</NavLink>
</NavItem>
<NavItem>
<NavLink as={Link} href="#link-2">
Link
</NavLink>
</NavItem>
<NavItem>
<NavLink as={Link} href="#link-3">
Link
</NavLink>
</NavItem>
<NavItem>
<NavLink as={Link} href="#link-4" disabled>Disabled</NavLink>
</NavItem>
</Nav>
)
}
Rounded pills
import Nav from 'react-bootstrap/Nav'
import NavItem from 'react-bootstrap/NavItem'
import NavLink from 'react-bootstrap/NavLink'
export default function PillsRoundedDemo() {
return (
<Nav variant="pills" defaultActiveKey="#link-1">
<NavItem>
<NavLink href="#link-1" className="rounded">
Active
</NavLink>
</NavItem>
<NavItem>
<NavLink href="#link-2" className="rounded">
Link
</NavLink>
</NavItem>
<NavItem>
<NavLink href="#link-3" className="rounded">
Link
</NavLink>
</NavItem>
<NavItem>
<NavLink href="#link-4" className="rounded" disabled>Disabled</NavLink>
</NavItem>
</Nav>
)
}
Fill and justify
import Nav from 'react-bootstrap/Nav'
import NavItem from 'react-bootstrap/NavItem'
import NavLink from 'react-bootstrap/NavLink'
export default function PillsFillJustifyDemo() {
return (
<>
<Nav variant="pills" fill defaultActiveKey="#link-1" className="mb-4">
<NavItem>
<NavLink href="#link-1">Active</NavLink>
</NavItem>
<NavItem>
<NavLink href="#link-2">Much longer nav link</NavLink>
</NavItem>
<NavItem>
<NavLink href="#link-3">Link</NavLink>
</NavItem>
<NavItem>
<NavLink href="#link-4" disabled>Disabled</NavLink>
</NavItem>
</Nav>
<Nav variant="pills" justify defaultActiveKey="#link-1">
<NavItem>
<NavLink href="#link-1">Active</NavLink>
</NavItem>
<NavItem>
<NavLink href="#link-2">Much longer nav link</NavLink>
</NavItem>
<NavItem>
<NavLink href="#link-3">Link</NavLink>
</NavItem>
<NavItem>
<NavLink href="#link-4" disabled>Disabled</NavLink>
</NavItem>
</Nav>
</>
)
}
Pills with dropdowns
import Nav from 'react-bootstrap/Nav'
import NavItem from 'react-bootstrap/NavItem'
import NavLink from 'react-bootstrap/NavLink'
import Dropdown from 'react-bootstrap/Dropdown'
import DropdownToggle from 'react-bootstrap/DropdownToggle'
import DropdownMenu from 'react-bootstrap/DropdownMenu'
import NavDropdown from 'react-bootstrap/NavDropdown'
import DropdownItem from 'react-bootstrap/DropdownItem'
export default function PillsWithDropdownsDemo() {
return (
<>
<Nav variant="pills" defaultActiveKey="#link-1">
<NavItem>
<NavLink href="#link-1">Active</NavLink>
</NavItem>
<Dropdown as={NavItem}>
<DropdownToggle as={NavLink}>Dropdown</DropdownToggle>
<DropdownMenu>
<DropdownItem href="#link-2-1">Action</DropdownItem>
<DropdownItem href="#link-2-2">Another action</DropdownItem>
<DropdownItem href="#link-2-3">Something else here</DropdownItem>
</DropdownMenu>
</Dropdown>
<NavItem>
<NavLink href="#link-3">Link</NavLink>
</NavItem>
<NavItem>
<NavLink href="#link-4" disabled>Disabled</NavLink>
</NavItem>
</Nav>
{/* Using NavDropdown shorthand */}
<Nav variant="pills" defaultActiveKey="#link-1">
<NavItem>
<NavLink href="#link-1">Active</NavLink>
</NavItem>
<NavDropdown title="Dropdown">
<DropdownItem href="#link-2-1">Action</DropdownItem>
<DropdownItem href="#link-2-2">Another action</DropdownItem>
<DropdownItem href="#link-2-3">Something else here</DropdownItem>
</NavDropdown>
<NavItem>
<NavLink href="#link-3">Link</NavLink>
</NavItem>
<NavItem>
<NavLink href="#link-4" disabled>Disabled</NavLink>
</NavItem>
</Nav>
</>
)
}
Vertical pills
import Nav from 'react-bootstrap/Nav'
import NavItem from 'react-bootstrap/NavItem'
import NavLink from 'react-bootstrap/NavLink'
export default function PillsVerticalDemo() {
return (
<Nav variant="pills" className="flex-column" style={{ maxWidth: 200 }} defaultActiveKey="#link-1">
<NavItem>
<NavLink href="#link-1">Active</NavLink>
</NavItem>
<NavItem>
<NavLink href="#link-2">Link</NavLink>
</NavItem>
<NavItem>
<NavLink href="#link-3">Link</NavLink>
</NavItem>
<NavItem>
<NavLink href="#link-4" disabled>Disabled</NavLink>
</NavItem>
</Nav>
)
}
Tabs-like behavior
Velit aute mollit ipsum ad dolor consectetur nulla officia culpa adipisicing exercitation fugiat tempor. Voluptate deserunt sit sunt nisi aliqua fugiat proident ea ut. Mollit voluptate reprehenderit occaecat nisi ad non minim tempor sunt voluptate consectetur exercitation id ut nulla. Ea et fugiat aliquip nostrud sunt incididunt consectetur culpa aliquip eiusmod dolor. Anim ad Lorem aliqua in cupidatat nisi enim voluptatum iure autem atque quaerat.
Cupidatat quis ad sint excepteur laborum in esse qui. Et excepteur consectetur ex nisi eu do cillum ad laborum. Mollit et eu officia dolore sunt Lorem culpa qui commodo velit ex amet id ex. Officia anim incididunt laboris deserunt anim aute dolor incididunt veniam aute dolore do exercitation. Dolor nisi culpa ex ad irure in elit eu dolore. Ad laboris ipsum reprehenderit irure non commodo enim culpa commodo itaque dolores dolorum similique architecto.
Ut ut do pariatur aliquip aliqua aliquip exercitation do nostrud commodo reprehenderit aute ipsum voluptate. Irure Lorem et laboris nostrud amet cupidatat cupidatat anim do ut velit mollit consequat enim tempor. Consectetur est minim nostrud nostrud consectetur irure labore voluptate irure. Ipsum id Lorem sit sint voluptate est pariatur eu ad cupidatat et deserunt culpa sit eiusmod deserunt. Consectetur et fugiat anim do eiusmod aliquip.
'use client'
import Nav from 'react-bootstrap/Nav'
import NavItem from 'react-bootstrap/NavItem'
import NavLink from 'react-bootstrap/NavLink'
import TabContainer from 'react-bootstrap/TabContainer'
import TabContent from 'react-bootstrap/TabContent'
import TabPane from 'react-bootstrap/TabPane'
export default function PillsTabsDemo() {
return (
<TabContainer defaultActiveKey="home">
<Nav variant="pills" className="mb-3">
<NavItem>
<NavLink eventKey="home">
<i className="ci-home me-2 ms-n1"/>
Home
</NavLink>
</NavItem>
<NavItem>
<NavLink eventKey="profile">
<i className="ci-user me-2 ms-n1"/>
Profile
</NavLink>
</NavItem>
<NavItem>
<NavLink eventKey="messages">
<i className="ci-message-square me-2 ms-n1"/>
Messages
</NavLink>
</NavItem>
</Nav>
<TabContent>
<TabPane eventKey="home">
Velit aute mollit ipsum ad dolor consectetur nulla officia culpa adipisicing exercitation fugiat tempor.
Voluptate deserunt sit sunt nisi aliqua fugiat proident ea ut. Mollit voluptate reprehenderit occaecat
nisi ad non minim tempor sunt voluptate consectetur exercitation id ut nulla. Ea et fugiat aliquip nostrud
sunt incididunt consectetur culpa aliquip eiusmod dolor. Anim ad Lorem aliqua in cupidatat nisi enim
voluptatum iure autem atque quaerat.
</TabPane>
<TabPane eventKey="profile">
Cupidatat quis ad sint excepteur laborum in esse qui. Et excepteur consectetur ex nisi eu do cillum ad
laborum. Mollit et eu officia dolore sunt Lorem culpa qui commodo velit ex amet id ex. Officia anim
incididunt laboris deserunt anim aute dolor incididunt veniam aute dolore do exercitation. Dolor nisi
culpa ex ad irure in elit eu dolore. Ad laboris ipsum reprehenderit irure non commodo enim culpa commodo
itaque dolores dolorum similique architecto.
</TabPane>
<TabPane eventKey="messages">
Ut ut do pariatur aliquip aliqua aliquip exercitation do nostrud commodo reprehenderit aute ipsum
voluptate. Irure Lorem et laboris nostrud amet cupidatat cupidatat anim do ut velit mollit consequat enim
tempor. Consectetur est minim nostrud nostrud consectetur irure labore voluptate irure. Ipsum id Lorem sit
sint voluptate est pariatur eu ad cupidatat et deserunt culpa sit eiusmod deserunt. Consectetur et fugiat
anim do eiusmod aliquip.
</TabPane>
</TabContent>
</TabContainer>
)
}