css基础制作按钮
CSS基础按钮制作
HTML结构
<button class="basic-button">点击按钮</button>
基础样式
.basic-button {
padding: 10px 20px;
background-color: #3498db;
color: white;
border: none;
border-radius: 5px;
cursor: pointer;
font-size: 16px;
}
悬停效果
.basic-button:hover {
background-color: #2980b9;
}
点击效果
.basic-button:active {
transform: scale(0.98);
}
禁用状态
.basic-button:disabled {
background-color: #bdc3c7;
cursor: not-allowed;
}
进阶按钮样式
渐变按钮
.gradient-button {
background: linear-gradient(to right, #3498db, #2ecc71);
border: none;
color: white;
padding: 12px 24px;
border-radius: 25px;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
边框按钮
.border-button {
background-color: transparent;
color: #3498db;
border: 2px solid #3498db;
padding: 10px 20px;
transition: all 0.3s ease;
}
.border-button:hover {
background-color: #3498db;
color: white;
}
图标按钮
<button class="icon-button">
<i class="fas fa-download"></i> 下载
</button>
.icon-button {
padding: 10px 15px 10px 40px;
background-color: #2ecc71;
color: white;
border: none;
border-radius: 5px;
position: relative;
}
.icon-button i {
position: absolute;
left: 15px;
top: 50%;
transform: translateY(-50%);
}
按钮动画效果
脉冲动画
.pulse-button {
animation: pulse 2s infinite;
}
@keyframes pulse {
0% {
transform: scale(1);
}
50% {
transform: scale(1.05);
}
100% {
transform: scale(1);
}
}
加载状态
<button class="loading-button">
<span class="spinner"></span>
处理中...
</button>
.loading-button {
position: relative;
padding-right: 40px;
}
.spinner {
display: inline-block;
width: 16px;
height: 16px;
border: 3px solid rgba(255,255,255,0.3);
border-radius: 50%;
border-top-color: white;
animation: spin 1s ease-in-out infinite;
margin-right: 8px;
}
@keyframes spin {
to { transform: rotate(360deg); }
}
按钮尺寸控制
.small-button {
padding: 6px 12px;
font-size: 14px;
}
.medium-button {
padding: 10px 20px;
font-size: 16px;
}
.large-button {
padding: 14px 28px;
font-size: 18px;
}
按钮组样式
<div class="button-group">
<button>左</button>
<button>中</button>
<button>右</button>
</div>
.button-group button {
border-radius: 0;
margin-left: -1px;
}
.button-group button:first-child {
border-top-left-radius: 5px;
border-bottom-left-radius: 5px;
}
.button-group button:last-child {
border-top-right-radius: 5px;
border-bottom-right-radius: 5px;
}






