昨天我們學會了按鈕的基本元件設計(尺寸、顏色、圓角、hover、disabled),今天要進一步優化按鈕!!
按鈕是網站最常見的互動元件,它的設計會影響使用者感受:
<button class="btn btn-primary">主要按鈕</button>
<button class="btn btn-secondary">次要按鈕</button>
<button class="btn btn-disabled" disabled>禁用按鈕</button>
"btn btn-primary"
:btn 是共用樣式,btn-primary 是特定顏色disabled
屬性:HTML 原生屬性,瀏覽器會自動禁用按鈕Q:為什麼分共用 + 個別?
→ 共用樣式控制尺寸、圓角、padding 等一致性;個別樣式控制顏色,維護方便
跟之前練習的一樣!
共用樣式
.btn {
padding: 10px 20px;
border: none; /* 移除瀏覽器預設邊框 */
border-radius: 8px; /* 圓角 */
font-size: 16px; /* 字體大小統一 */
cursor: pointer;
transition: all 0.2s ease; /* hover/active 平滑過渡 */
}
padding
:讓按鈕文字有空間,不會緊貼邊框border-radius
:圓角cursor: pointer
:手型提示可點擊transition
:動態效果平滑.btn-primary {
background-color: #007bff;
color: #fff;
}
.btn-primary:hover {
background-color: #0056b3; /* hover 顏色變深,提示互動 */
}
.btn-primary:active {
transform: scale(0.97); /* 點擊縮小 3%,增加按壓感 */
}
.btn-secondary {
background-color: #6c757d;
color: #fff;
}
.btn-secondary:hover {
background-color: #5a6268;
}
.btn-disabled {
background-color: #ccc;
color: #888;
cursor: not-allowed; /* 顯示禁止符號 */
}
按鈕在手機和桌面可能需要不同尺寸:
@media (max-width: 768px) {
.btn {
width: 100%; /* 手機上按鈕佔滿寬度 */
padding: 12px; /* 增加觸控範圍,方便點擊 */
}
}
hover
、active
、 disabled
button:hover {
background-color: blue; /* 滑鼠移上去變藍 */
color: white;
}
注意:
button:active {
transform: scale(0.95); /* 按下去有縮小的感覺 */
background-color: darkblue;
}
注意:
:hover
狀態<button disabled>送出</button>
button:disabled {
background-color: gray;
cursor: not-allowed; /* 滑鼠指標變成禁止符號 */
opacity: 0.5;
}
注意:
disabled
是 HTML 屬性,CSS 的 :disabled
是用來選取有這個屬性的元素
:hover
和 :active
效果:hover
→ 滑鼠移上去時的視覺效果(互動提示):active
→ 按下時的即時回饋(點擊瞬間效果):disabled
→ 元素不可操作時的樣式(無法互動),避免誤操作