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

วิธีสร้าง Vertical Button Group (กลุ่มปุ่มแนวตั้ง) ด้วย CSS

สร้างกลุ่มปุ่มแนวตั้ง (Vertical Button Group) ที่ต่อกันไม่มีช่องว่าง ใช้ display: block และ border-bottom คั่นระหว่างปุ่ม

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

<!DOCTYPE html> <html> <style> *,*::before,*::after{    box-sizing: border-box; } .btnGroup{    display: inline-block;    font-size: 0;    border: 2px solid darkgreen;    box-shadow: 5px 10px 18px rgb(55, 173, 39); } button{    display: block;    width: 100%;    margin:0px;    border:none;    padding: 15px;    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;    font-weight: bold;    font-size: 20px; } button:not(:last-child){    border-bottom: 2px solid rgb(6, 134, 49); } button:hover{    background:rgb(48, 24, 134);    box-shadow: 5px 10px 18px rgb(41, 39, 173);    color:white; } </style> <body> <h1>Button Group</h1> <div class="btnGroup"> <button>Facebook</button> <button>Twitter</button> <button>LinkedIn</button> </div> <h2>Hover over the above button group to see hover effects</h2> </body> </html>

เทคนิคสำคัญ

  • .btnGroup { font-size: 0; } - กำจัดช่องว่างระหว่าง inline-block elements (white-space)
  • button { display: block; width: 100%; } - ปุ่มเต็มความกว้าง เรียงแนวตั้ง
  • button:not(:last-child) { border-bottom: ... } - เส้นคั่นระหว่างปุ่ม ไม่มีเส้นท้ายสุด
  • box-shadow บน Container - เงารอบกลุ่มปุ่มทั้งหมด

Hover Effect

Hover ปุ่มใดปุ่มหนึ่ง -> เปลี่ยนพื้นหลังสีม่วง เขียนเงาเปลี่ยนสี ตัวอักษรขาว

ผลลัพธ์

กลุ่มปุ่ม 3 ปุ่ม (Facebook, Twitter, LinkedIn) ติดกันแนวตั้ง ขอบเขียวเข้ม Hover ปุ่ม -> สีม่วงเงาแก้วน้ำเงิน