表单控件的 CSS 属性兼容性表
以下兼容性表格试图总结 CSS 对 HTML 表单的支持状态。由于 CSS 和 HTML 表单的复杂性,这些表格不能被视为完美的参考。但是,它们会让你很好地了解哪些可以做,哪些不能做,这将有助于你学习如何做事情。
如何阅读表格
值
渲染
兼容性表格
使用 CSS 改变表单控件的外观,例如使用 border
、background
、border-radius
和 height
,可能会部分或完全关闭某些浏览器中窗口小部件的原生外观和感觉。在使用它们时要小心。
文本字段
参见 text
、search
和 password
输入类型。
属性 | N | T | 注意 |
---|---|---|---|
CSS 盒模型 | |||
width |
✅ 是 | ✅ 是 | |
height |
⚠️ 部分[1] | ✅ 是 |
|
border |
⚠️ 部分[1] | ✅ 是 |
|
margin |
✅ 是 | ✅ 是 | |
padding |
⚠️ 部分[1] | ✅ 是 |
|
文本和字体 | |||
color [1] |
✅ 是 | ✅ 是 |
|
font |
✅ 是 | ✅ 是 | 参见有关 line-height 的说明 |
letter-spacing |
✅ 是 | ✅ 是 | |
text-align |
✅ 是 | ✅ 是 | |
text-decoration |
⚠️ 部分 | ⚠️ 部分 | 参见有关 Opera 的说明 |
text-indent |
⚠️ 部分[1] | ⚠️ 部分[1] |
|
text-overflow |
⚠️ 部分 | ⚠️ 部分 | |
text-shadow |
⚠️ 部分 | ⚠️ 部分 | |
text-transform |
✅ 是 | ✅ 是 | |
边框和背景 | |||
background |
⚠️ 部分[1] | ✅ 是 |
|
border-radius |
⚠️ 部分[1] | ✅ 是 |
|
box-shadow |
❌ 否 | ⚠️ 部分[1] |
|
按钮
参见 button
、submit
和 reset
输入类型以及
元素。<button>
属性 | N | T | 注意 |
---|---|---|---|
CSS 盒模型 | |||
width |
✅ 是 | ✅ 是 | |
height |
⚠️ 部分[1] | ✅ 是 |
|
border |
⚠️ 部分 | ✅ 是 | |
margin |
✅ 是 | ✅ 是 | |
padding |
⚠️ 部分[1] | ✅ 是 |
|
文本和字体 | |||
color |
✅ 是 | ✅ 是 | |
font |
✅ 是 | ✅ 是 | 参见有关 line-height 的说明。 |
letter-spacing |
✅ 是 | ✅ 是 | |
text-align |
❌ 否 | ❌ 否 | |
text-decoration |
⚠️ 部分 | ✅ 是 | |
text-indent |
✅ 是 | ✅ 是 | |
text-overflow |
❌ 否 | ❌ 否 | |
text-shadow |
⚠️ 部分 | ⚠️ 部分 | |
text-transform |
✅ 是 | ✅ 是 | |
边框和背景 | |||
background |
✅ 是 | ✅ 是 | |
border-radius |
✅ 是[1] | ✅ 是[1] |
|
box-shadow |
❌ 否 | ⚠️ 部分[1] |
|
数字
参见 number
输入类型。没有标准方法可以更改用于更改字段值的微调器的样式,Safari 上的微调器位于字段之外。
属性 | N | T | 注意 |
---|---|---|---|
CSS 盒模型 | |||
width |
✅ 是 | ✅ 是 | |
height |
⚠️ 部分[1] | ⚠️ 部分[1] |
|
border |
✅ 是 | ✅ 是 | |
margin |
✅ 是 | ✅ 是 | |
padding |
⚠️ 部分[1] | ⚠️ 部分[1] |
|
文本和字体 | |||
color |
✅ 是 | ✅ 是 | |
font |
✅ 是 | ✅ 是 | 参见有关 line-height 的说明。 |
letter-spacing |
✅ 是 | ✅ 是 | |
text-align |
✅ 是 | ✅ 是 | |
text-decoration |
⚠️ 部分 | ⚠️ 部分 | |
text-indent |
✅ 是 | ✅ 是 | |
text-overflow |
❌ 否 | ❌ 否 | |
text-shadow |
⚠️ 部分 | ⚠️ 部分 | |
text-transform |
N.A. | N.A. | |
边框和背景 | |||
background |
❌ 否 | ❌ 否 |
支持,但浏览器之间存在太多不一致,无法可靠使用。 |
border-radius |
❌ 否 | ❌ 否 | |
box-shadow |
❌ 否 | ❌ 否 |
复选框和单选按钮
属性 | N | T | 注意 |
---|---|---|---|
CSS 盒模型 | |||
width |
❌ 否[1] | ❌ 否[1] |
|
height |
❌ 否[1] | ❌ 否[1] |
|
border |
❌ 否 | ❌ 否 | |
margin |
✅ 是 | ✅ 是 | |
padding |
❌ 否 | ❌ 否 | |
文本和字体 | |||
color |
N.A. | N.A. | |
font |
N.A. | N.A. | |
letter-spacing |
N.A. | N.A. | |
text-align |
N.A. | N.A. | |
text-decoration |
N.A. | N.A. | |
text-indent |
N.A. | N.A. | |
text-overflow |
N.A. | N.A. | |
text-shadow |
N.A. | N.A. | |
text-transform |
N.A. | N.A. | |
边框和背景 | |||
background |
❌ 否 | ❌ 否 | |
border-radius |
❌ 否 | ❌ 否 | |
box-shadow |
❌ 否 | ❌ 否 |
选择框(单行)
参见
、<select>
和 <optgroup>
元素。<option>
属性 | N | T | 注意 |
---|---|---|---|
CSS 盒模型 | |||
width |
⚠️ 部分[1] | ⚠️ 部分[1] |
|
height |
❌ 否 | ✅ 是 | |
border |
⚠️ 部分 | ✅ 是 | |
margin |
✅ 是 | ✅ 是 | |
padding |
❌ 否[1] | ⚠️ 部分[2] |
|
文本和字体 | |||
color |
⚠️ 部分[1] | ⚠️ 部分[1] |
|
font |
⚠️ 部分[1] | ⚠️ 部分[1] |
|
letter-spacing |
⚠️ 部分[1] | ⚠️ 部分[1] |
|
text-decoration |
⚠️ 部分[1] | ⚠️ 部分[1] |
|
text-indent |
⚠️ 部分[1] | ⚠️ 部分[1] |
|
text-overflow |
❌ 否 | ❌ 否 | |
text-shadow |
⚠️ 部分[1] | ⚠️ 部分[1] |
|
text-transform |
⚠️ 部分[1] | ⚠️ 部分[1] |
|
边框和背景 | |||
background |
⚠️ 部分[1] | ⚠️ 部分[1] |
|
border-radius |
⚠️ 部分[1] | ⚠️ 部分[1] | |
box-shadow |
❌ 否 | ⚠️ 部分[1] |
注意 Firefox 没有提供更改
元素上的向下箭头的方法。<select>
选择框(多行)
参见
、<select>
和 <optgroup>
元素以及 <option>
size
属性。
属性 | N | T | 注意 |
---|---|---|---|
CSS 盒模型 | |||
width |
✅ 是 | ✅ 是 | |
height |
✅ 是 | ✅ 是 | |
border |
✅ 是 | ✅ 是 | |
margin |
✅ 是 | ✅ 是 | |
padding |
⚠️ 部分[1] | ⚠️ 部分[1] |
|
文本和字体 | |||
color |
✅ 是 | ✅ 是 | |
font |
✅ 是 | ✅ 是 | 参见有关 line-height 的说明。 |
letter-spacing |
⚠️ 部分[1] | ⚠️ 部分[1] |
|
text-align |
❌ 否[1] | ❌ 否[1] |
|
text-decoration |
❌ 否[1] | ❌ 否[1] |
|
text-indent |
❌ 否 | ❌ 否 | |
text-overflow |
❌ 否 | ❌ 否 | |
text-shadow |
❌ 否 | ❌ 否 | |
text-transform |
⚠️ 部分[1] | ⚠️ 部分[1] |
|
边框和背景 | |||
background |
✅ 是 | ✅ 是 | |
border-radius |
✅ 是[1] | ✅ 是[1] |
|
box-shadow |
❌ 否 | ⚠️ 部分[1] |
|
数据列表
参见
和 <datalist>
元素以及 <input>
list
属性。
属性 | N | T | 注意 |
---|---|---|---|
CSS 盒模型 | |||
width |
❌ 否 | ❌ 否 | |
height |
❌ 否 | ❌ 否 | |
border |
❌ 否 | ❌ 否 | |
margin |
❌ 否 | ❌ 否 | |
padding |
❌ 否 | ❌ 否 | |
文本和字体 | |||
color |
❌ 否 | ❌ 否 | |
font |
❌ 否 | ❌ 否 | |
letter-spacing |
❌ 否 | ❌ 否 | |
text-align |
❌ 否 | ❌ 否 | |
text-decoration |
❌ 否 | ❌ 否 | |
text-indent |
❌ 否 | ❌ 否 | |
text-overflow |
❌ 否 | ❌ 否 | |
text-shadow |
❌ 否 | ❌ 否 | |
text-transform |
❌ 否 | ❌ 否 | |
边框和背景 | |||
background |
❌ 否 | ❌ 否 | |
border-radius |
❌ 否 | ❌ 否 | |
box-shadow |
❌ 否 | ❌ 否 |
文件选择器
参见 file
输入类型。
属性 | N | T | 注意 |
---|---|---|---|
CSS 盒模型 | |||
width |
❌ 否 | ❌ 否 | |
height |
❌ 否 | ❌ 否 | |
border |
❌ 否 | ❌ 否 | |
margin |
✅ 是 | ✅ 是 | |
padding |
❌ 否 | ❌ 否 | |
文本和字体 | |||
color |
✅ 是 | ✅ 是 | |
font |
❌ 否[1] | ❌ 否[1] |
|
letter-spacing |
⚠️ 部分[1] | ⚠️ 部分[1] |
|
text-align |
❌ 否 | ❌ 否 | |
text-decoration |
❌ 否 | ❌ 否 | |
text-indent |
⚠️ 部分[1] | ⚠️ 部分[1] |
|
text-overflow |
❌ 否 | ❌ 否 | |
text-shadow |
❌ 否 | ❌ 否 | |
text-transform |
❌ 否 | ❌ 否 | |
边框和背景 | |||
background |
❌ 否[1] | ❌ 否[1] |
|
border-radius |
❌ 否 | ❌ 否 | |
box-shadow |
❌ 否 | ⚠️ 部分[1] |
|
日期选择器
参见 date
和 time
输入类型。许多属性受支持,但浏览器之间存在太多不一致,无法可靠使用。
属性 | N | T | 注意 |
---|---|---|---|
CSS 盒模型 | |||
width |
❌ 否 | ❌ 否 | |
height |
❌ 否 | ❌ 否 | |
border |
❌ 否 | ❌ 否 | |
margin |
✅ 是 | ✅ 是 | |
padding |
❌ 否 | ❌ 否 | |
文本和字体 | |||
color |
❌ 否 | ❌ 否 | |
font |
❌ 否 | ❌ 否 | |
letter-spacing |
❌ 否 | ❌ 否 | |
text-align |
❌ 否 | ❌ 否 | |
text-decoration |
❌ 否 | ❌ 否 | |
text-indent |
❌ 否 | ❌ 否 | |
text-overflow |
❌ 否 | ❌ 否 | |
text-shadow |
❌ 否 | ❌ 否 | |
text-transform |
❌ 否 | ❌ 否 | |
边框和背景 | |||
background |
❌ 否 | ❌ 否 | |
border-radius |
❌ 否 | ❌ 否 | |
box-shadow |
❌ 否 | ❌ 否 |
颜色选择器
参见 color
输入类型
属性 | N | T | 注意 |
---|---|---|---|
CSS 盒模型 | |||
width |
✅ 是 | ✅ 是 | |
height |
❌ 否[1] | ✅ 是 |
|
border |
✅ 是 | ✅ 是 | |
margin |
✅ 是 | ✅ 是 | |
padding |
❌ 否[1] | ✅ 是 |
|
文本和字体 | |||
color |
N.A. | N.A. | |
font |
N.A. | N.A. | |
letter-spacing |
N.A. | N.A. | |
text-align |
N.A. | N.A. | |
text-decoration |
N.A. | N.A. | |
text-indent |
N.A. | N.A. | |
text-overflow |
N.A. | N.A. | |
text-shadow |
N.A. | N.A. | |
text-transform |
N.A. | N.A. | |
边框和背景 | |||
background |
❌ 否[1] | ❌ 否[1] |
|
border-radius |
❌ 否[1] | ❌ 否[1] | |
box-shadow |
❌ 否[1] | ❌ 否[1] |
仪表和进度
参见
和 <meter>
元素<progress>
属性 | N | T | 注意 |
---|---|---|---|
CSS 盒模型 | |||
width |
✅ 是 | ✅ 是 | |
height |
✅ 是 | ✅ 是 | |
border |
⚠️ 部分 | ✅ 是 | |
margin |
✅ 是 | ✅ 是 | |
padding |
✅ 是 | ⚠️ 部分[1] |
|
文本和字体 | |||
color |
N.A. | N.A. | |
font |
N.A. | N.A. | |
letter-spacing |
N.A. | N.A. | |
text-align |
N.A. | N.A. | |
text-decoration |
N.A. | N.A. | |
text-indent |
N.A. | N.A. | |
text-overflow |
N.A. | N.A. | |
text-shadow |
N.A. | N.A. | |
text-transform |
N.A. | N.A. | |
边框和背景 | |||
background |
❌ 否[1] | ❌ 否[1] |
|
border-radius |
❌ 否[1] | ❌ 否[1] | |
box-shadow |
❌ 否[1] | ❌ 否[1] |
范围
参见 range
输入类型。没有标准方法可以更改范围控制柄的样式,Opera 也没有方法可以调整范围窗口小部件的默认渲染。
属性 | N | T | 注意 |
---|---|---|---|
CSS 盒模型 | |||
width |
✅ 是 | ✅ 是 | |
height |
⚠️ 部分[1] | ⚠️ 部分[1] |
|
border |
❌ 否 | ✅ 是 | |
margin |
✅ 是 | ✅ 是 | |
padding |
⚠️ 部分[1] | ✅ 是 |
|
文本和字体 | |||
color |
N.A. | N.A. | |
font |
N.A. | N.A. | |
letter-spacing |
N.A. | N.A. | |
text-align |
N.A. | N.A. | |
text-decoration |
N.A. | N.A. | |
text-indent |
N.A. | N.A. | |
text-overflow |
N.A. | N.A. | |
text-shadow |
N.A. | N.A. | |
text-transform |
N.A. | N.A. | |
边框和背景 | |||
background |
❌ 否[1] | ❌ 否[1] |
|
border-radius |
❌ 否[1] | ❌ 否[1] | |
box-shadow |
❌ 否[1] | ❌ 否[1] |
图像按钮
参见 image
输入类型
属性 | N | T | 注意 |
---|---|---|---|
CSS 盒模型 | |||
width |
✅ 是 | ✅ 是 | |
height |
✅ 是 | ✅ 是 | |
border |
✅ 是 | ✅ 是 | |
margin |
✅ 是 | ✅ 是 | |
padding |
✅ 是 | ✅ 是 | |
文本和字体 | |||
color |
N.A. | N.A. | |
font |
N.A. | N.A. | |
letter-spacing |
N.A. | N.A. | |
text-align |
N.A. | N.A. | |
text-decoration |
N.A. | N.A. | |
text-indent |
N.A. | N.A. | |
text-overflow |
N.A. | N.A. | |
text-shadow |
N.A. | N.A. | |
text-transform |
N.A. | N.A. | |
边框和背景 | |||
background |
✅ 是 | ✅ 是 | |
border-radius |
⚠️ 部分[1] | ⚠️ 部分[1] |
|
box-shadow |
⚠️ 部分[1] | ⚠️ 部分[1] |
|
另请参阅
学习路径
高级主题
- 通过 JavaScript 发送表单
- 如何构建自定义表单窗口小部件
- 旧版浏览器中的 HTML 表单
- HTML 表单的高级样式
- 表单窗口小部件的属性兼容性表