表单用css制作
表单基础结构
使用HTML创建表单的基本结构,包含<form>标签及常用输入元素(如<input>、<textarea>、<select>)。
<form>
<label for="name">姓名</label>
<input type="text" id="name" name="name" placeholder="请输入姓名">
<label for="email">邮箱</label>
<input type="email" id="email" name="email" placeholder="请输入邮箱">
<label for="message">留言</label>
<textarea id="message" name="message" placeholder="请输入留言"></textarea>
<button type="submit">提交</button>
</form>
基础样式设计
通过CSS为表单添加布局、颜色和间距等基础样式。
form {
max-width: 500px;
margin: 0 auto;
padding: 20px;
background-color: #f9f9f9;
border-radius: 8px;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
label {
display: block;
margin-bottom: 8px;
font-weight: bold;
color: #333;
}
input, textarea {
width: 100%;
padding: 10px;
margin-bottom: 16px;
border: 1px solid #ddd;
border-radius: 4px;
font-size: 16px;
}
button {
background-color: #007bff;
color: white;
padding: 10px 20px;
border: none;
border-radius: 4px;
cursor: pointer;
font-size: 16px;
}
button:hover {
background-color: #0056b3;
}
响应式布局
使用媒体查询确保表单在不同设备上适配。
@media (max-width: 600px) {
form {
padding: 15px;
}
input, textarea {
padding: 8px;
}
}
交互效果增强
通过CSS伪类提升用户体验,如聚焦状态和验证提示。
input:focus, textarea:focus {
border-color: #007bff;
outline: none;
box-shadow: 0 0 0 2px rgba(0, 123, 255, 0.25);
}
input:invalid {
border-color: #ff6b6b;
}
input:valid {
border-color: #51cf66;
}
高级样式技巧
使用Flexbox或Grid布局复杂表单,或添加自定义复选框/单选按钮。
/* 自定义复选框 */
.checkbox-container {
display: flex;
align-items: center;
margin-bottom: 16px;
}
.checkbox-container input[type="checkbox"] {
opacity: 0;
width: 0;
}
.checkbox-container label {
position: relative;
padding-left: 30px;
cursor: pointer;
}
.checkbox-container label::before {
content: "";
position: absolute;
left: 0;
top: 0;
width: 20px;
height: 20px;
border: 1px solid #ddd;
background: white;
}
.checkbox-container input:checked + label::after {
content: "✓";
position: absolute;
left: 5px;
top: 0;
color: #007bff;
}
通过以上方法,可以创建美观且功能完整的CSS表单。







