Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> CSS

วิธีสร้าง Navigation Bar จัดซ้าย-ขวา (Left & Right Aligned) ด้วย CSS Flexbox

ใช้ CSS Flexbox สร้าง Navigation Bar แบบแยกกลุ่มลิงก์ ซ้ายและขวา เรียบร้อย ทันสมัย และ Responsive ได้ง่าย

ตัวอย่างโค้ด

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <style> body{    margin:0px;    margin-top:60px;    padding: 0px; } nav{    display: flex;    position: fixed;    top:0;    width: 100%;    background-color: rgb(251, 255, 196);    overflow: auto;    height: auto; } .left-links{    flex:1 1 200px; } .links {    display: inline-block;    text-align: center;    padding: 14px;    color: rgb(0, 0, 0);    text-decoration: none;    font-size: 17px;    font-weight: bolder; } .links:hover {    border-bottom: 2px solid purple; } .selected{    border-bottom: 2px solid purple; } </style> </head> <body> <nav> <div class="left-links"> <a class="links selected" href="#">Home</a> <a class="links" href="#"> Login</a> <a class="links" href="#"> Register</a> </div> <div class="right-links"> <a class="links" href="#"> Contact Us</a> <a class="links" href="#">More Info</a> </div> </nav> <h1>Hover on the above links</h1> </body> </html>

คำอธิบาย Flexbox

  • nav { display: flex; } - เปิดใช้ Flexbox
  • .left-links { flex: 1 1 200px; } - ขยายเต็มพื้นที่ต่ำสุด 200px
  • .right-links - ไม่มี flex-grow จะอยู่ขวาสุดตามลำดับ
  • ลิงก์ใน .left-links เรียงซ้าย, .right-links เรียงขวาอัตโนมัติ

ขยายเป็น Responsive

@media (max-width: 768px) {
  nav { flex-direction: column; }
  .left-links, .right-links { width: 100%; text-align: center; }
}

ผลลัพธ์

เมนูสีเหลืองอ่อน กลุ่มซ้าย (Home, Login, Register) กลุ่มขวา (Contact Us, More Info)Hover เส้นใต้สีม่วง