Bootstrap 5 การใช้งาน Navbar

Navbar หรือแถบนำทาง เป็นองค์ประกอบหนึ่งที่ใช้สำหรับการจัดการนำทางบนเว็บไซต์ ซึ่ง Bootstrap 5 ได้ออกแบบและพัฒนา Navbar ให้มีความยืดหยุ่นสูงและง่ายต่อการใช้งาน พร้อมทั้งรองรับการปรับแต่งต่าง ๆ ที่หลากหลาย เพื่อให้เข้ากับการออกแบบเว็บไซต์ที่ต้องการ

การสร้าง Navbar เบื้องต้น

การสร้าง Navbar ใน Bootstrap 5 สามารถทำได้ง่าย ๆ โดยใช้โครงสร้าง HTML พร้อมคลาส CSS ที่ Bootstrap จัดเตรียมไว้ ดังตัวอย่าง

<nav class="navbar navbar-expand-lg navbar-light bg-light">
  <div class="container-fluid">
    <a class="navbar-brand" href="#">BrandName</a>
    <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
      <span class="navbar-toggler-icon"></span>
    </button>
    <div class="collapse navbar-collapse" id="navbarNav">
      <ul class="navbar-nav">
        <li class="nav-item">
          <a class="nav-link active" aria-current="page" href="#">Home</a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#">Features</a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#">Pricing</a>
        </li>
      </ul>
    </div>
  </div>
</nav>
  • navbar ใช้เพื่อสร้างแถบนำทาง
  • navbar-expand-lg ช่วยให้แถบนำทางขยายออกเมื่อหน้าจอมีขนาดใหญ่ขึ้น
  • navbar-light bg-light เป็นการกำหนดสีและลักษณะของ Navbar
  • navbar-toggler เป็นปุ่มสำหรับแสดงเมนูบนอุปกรณ์ที่มีหน้าจอขนาดเล็ก
  • navbar-collapse และ collapse ใช้เพื่อจัดการแสดงและซ่อนเมนู

ผลลัพธ์ในหน้าจอกว้าง

ผลลัพธ์ในหน้าจอขนาดเล็ก

Navbar แบบเลย์เอาต์คงที่ (Fixed Navbar)

ในบางกรณีเราต้องการให้ Navbar อยู่กับที่เมื่อเลื่อนหน้าจอ สามารถใช้คลาส fixed-top เพื่อให้ Navbar ยังคงอยู่ด้านบนเสมอ หรือ fixed-bottom หากต้องการให้อยู่ด้านล่าง

<nav class="navbar navbar-expand-lg navbar-dark bg-dark fixed-top">
  <div class="container-fluid">
    <a class="navbar-brand" href="#">BrandName</a>
    <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
      <span class="navbar-toggler-icon"></span>
    </button>
    <div class="collapse navbar-collapse" id="navbarNav">
      <ul class="navbar-nav">
        <li class="nav-item">
          <a class="nav-link active" aria-current="page" href="#">Home</a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#">Features</a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#">Pricing</a>
        </li>
      </ul>
    </div>
  </div>
</nav>

fixed-top ใช้เพื่อทำให้ Navbar คงที่ด้านบนเมื่อเลื่อนหน้าจอ

ผลลัพธ์ในหน้าจอขนาดใหญ่

ผลลัพธ์ในหน้าจอขนาดเล็ก

Navbar พร้อมกับโลโก้และเมนูทางขวา

การวางตำแหน่งเมนูและโลโก้เป็นสิ่งที่สามารถปรับแต่งได้ใน Bootstrap 5 โดยการใช้คลาส ms-auto เพื่อจัดเมนูไปทางขวา

<nav class="navbar navbar-expand-lg navbar-light bg-light">
  <div class="container-fluid">
    <a class="navbar-brand" href="#">
      <img src="logo.png" alt="Logo" width="30" height="30">
    </a>
    <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
      <span class="navbar-toggler-icon"></span>
    </button>
    <div class="collapse navbar-collapse" id="navbarNav">
      <ul class="navbar-nav ms-auto">
        <li class="nav-item">
          <a class="nav-link active" aria-current="page" href="#">Home</a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#">About</a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#">Services</a>
        </li>
      </ul>
    </div>
  </div>
</nav>
  • ms-auto ใช้เพื่อจัดตำแหน่งเมนูไปทางขวาของ Navbar
  • ส่วนโลโก้สามารถแทรก <img> ใน navbar-brand เพื่อให้แสดงโลโก้ได้

Navbar พร้อมกับฟอร์มค้นหา

การเพิ่มฟอร์มค้นหาใน Navbar สามารถทำได้โดยใช้โครงสร้างฟอร์มภายในแถบนำทาง

<nav class="navbar navbar-expand-lg navbar-light bg-light">
  <div class="container-fluid">
    <a class="navbar-brand" href="#">BrandName</a>
    <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
      <span class="navbar-toggler-icon"></span>
    </button>
    <div class="collapse navbar-collapse" id="navbarNav">
      <ul class="navbar-nav me-auto">
        <li class="nav-item">
          <a class="nav-link active" aria-current="page" href="#">Home</a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#">Features</a>
        </li>
      </ul>
      <form class="d-flex">
        <input class="form-control me-2" type="search" placeholder="Search" aria-label="Search">
        <button class="btn btn-outline-success" type="submit">Search</button>
      </form>
    </div>
  </div>
</nav>
  • form ใช้ในการสร้างฟอร์มค้นหา
  • d-flex ใช้ในการจัดเรียงฟอร์มและปุ่มให้เรียงตามแนวนอน
  • me-auto ช่วยให้รายการเมนูเลื่อนไปทางซ้ายและฟอร์มค้นหาวางด้านขวา

Navbar แบบ Transparent (โปร่งแสง)

Navbar สามารถทำให้โปร่งแสงได้โดยการใช้คลาส bg-transparent เพื่อให้แถบมีลักษณะโปร่งแสง

<nav class="navbar navbar-expand-lg navbar-light bg-transparent">
  <div class="container-fluid">
    <a class="navbar-brand" href="#">BrandName</a>
    <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
      <span class="navbar-toggler-icon"></span>
    </button>
    <div class="collapse navbar-collapse" id="navbarNav">
      <ul class="navbar-nav">
        <li class="nav-item">
          <a class="nav-link active" aria-current="page" href="#">Home</a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#">Features</a>
        </li>
      </ul>
    </div>
  </div>
</nav>

bg-transparent ใช้เพื่อทำให้พื้นหลังของ Navbar โปร่งแสง

สรุป

การใช้ Navbar ใน Bootstrap 5 สามารถปรับแต่งและประยุกต์ใช้งานได้หลากหลาย ไม่ว่าจะเป็นการปรับตำแหน่งเมนู การเพิ่มฟอร์มค้นหา การทำให้แถบนำทางคงที่ หรือการปรับแต่งลักษณะการแสดงผล เช่น สีและความโปร่งแสง เราสามารถเลือกใช้ตามความต้องการ

แชร์เรื่องนี้