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

วิธีเพิ่มกล่องค้นหา (Search Box) ภายในเมนูนำทาง Responsive

บทความนี้สาธิตวิธีเพิ่มกล่องค้นหาเข้าไปในแถบนำทาง (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> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" /> <style> body {    margin: 0px;    margin-top: 10px;    padding: 0px; } nav {    width: 100%;    background-color: rgb(39, 39, 39);    overflow: auto;    height: auto; } .links {    display: inline-block;    text-align: center;    padding: 14px;    color: rgb(178, 137, 253);    text-decoration: none;    font-size: 17px; } .links:hover {    background-color: rgb(100, 100, 100); } input[type="text"] {    float: right;    padding: 6px;    margin-top: 8px;    margin-right: 8px;    font-size: 17px; } .selected {    background-color: rgb(0, 18, 43); } @media screen and (max-width: 830px) { .links {    display: block; } input[type="text"] {    display: block;    width: 100%;    margin: 0px;    border-bottom: 2px solid rgb(178, 137, 253);    text-align: center; } } </style> </head> <body> <nav> <a class="links selected" href="#"> <i class="fa fa-fw fa-home"></i> Home </a> <a class="links" href="#"> <i class="fa fa-fw fa-user"></i> Login </a> <a class="links" href="#"> <i class="fa fa-user-circle-o" aria-hidden="true"></i> Register </a> <a class="links" href="#"> <i class="fa fa-fw fa-envelope"></i> Contact Us </a> <a class="links" href="#"> <i class="fa fa-info-circle" aria-hidden="true"></i> More Info </a> <input type="text" placeholder="Search Here.." /> </nav> </body> </html>

จุดสำคัญของการทำ Responsive

  • ใช้ @media screen and (max-width: 830px) เพื่อเปลี่ยนรูปแบบเมื่อหน้าจอแคบกว่า 830px
  • ลิงก์เมนูเปลี่ยนจาก inline-block เป็น block เพื่อแสดงแนวตั้ง
  • กล่องค้นหาเปลี่ยนเป็นกว้างเต็มหน้าจอ (width: 100%) และจัดกึ่งกลาง
  • ใช้ Font Awesome สำหรับไอคอน (ต้องเพิ่ม CDN link)

ผลลัพธ์

บนเดสก์ท็อป: เมนูแนวนอนพร้อมไอคอนและกล่องค้นหาด้านขวา
บนมือถือ (≤830px): เมนูเปลี่ยนเป็นแนวตั้ง กล่องค้นหาขยายเต็มความกว้าง