对提交元素进行以下操作有哪些缺陷和优势?HTML隐形提交输入陷阱和优势
<!doctype html>
<style>
label input{display:none}
label span{background:blue;border:1px solid black;color:white;padding:4px;}
</style>
<form action=#>
<label>
<span>Submit</span>
<input type=submit value=Submit name=Submit>
</label>
</form>
添加示例jsbin.com/onabo4。
假设IE和其他一些浏览器有输入提交样式问题。以上是一个很好的解决方案吗?添加overflow:auto
修复了IE浏览器呈现问题,除非您在表格内。以上是一个很好的解决方案吗?
上述代码能解决什么问题?
编辑:这似乎也解决了输入元素的display:block问题,只要你想输入type = sumbit。这个问题在这里解释:input with display:block is not a block, why not?
编辑2:对于代码的纯粹主义者和跨浏览器的支持,我建议做以下几点: 的onclick可能是可选的,但有些浏览器可能不支持标签要素。 tabindex是为了让用户能够标签元素。基本上tabindex增加了键盘的友好性。
<!doctype html>
<style>
.type-submit input{display:none;}
.type-submit{background:pink /* more pretty styles.... */}
</style>
<label onclick=this.form.submit() tabindex class=type-submit>
Sumbit<input type=submit>
</label>
咦,学习新的东西每天,这是一个非常有趣的想法(直到它在不支持标签按钮的浏览器中运行)。 – Ben 2011-04-27 15:07:43
@mazzzzz这就是很多zs :)无论如何,我认为所有现代浏览器都支持标签标签。如果这些是唯一的问题,我不会担心N4或IE5。 – William 2011-04-27 15:11:04