用户体验

如何更好地控制input输入框的高度

sizing, so we're ok with this selector */

input :not ([ type = image ]), textarea {

  -moz-box-sizing: border -box;

}

在 webkit 源码中的 WebCore/css/quirks.css 发现了这句

/* This will apply only to text fields, since all other inputs already use border box sizing */

input :not ([ type = image ]), textarea {

    -webkit-box-sizing: border -box;

}

原来浏览器就是这么解决的 , 那么在标准模式下用它将是一种比较好的方案

one more thing

不过这种写法在 Firefox 3.5 以下的版本会有个问题 , 那就是输入框内容将无法垂直居中 , 以英文为例 , 3.5 中和顶部的差距是 5 像素 , 而 3.6 是 7 像素 , 目前还没想到解决方案

 

幸好在 Firefox 3.6 中解决了这个问题 , 而且 3.5 会默认升级到 3.6, 所以这个问题也就不需要考虑了

结论

从这个例子可以痛苦地体验 , 如果没有统一的规范 , 要兼容不同浏览器是如此的困难 , 而且这还仅仅是一个很不完全的测试 , 好在浏览器还是尽可能做到了最大兼容 , 比如 , 假设 windows 下默认主题和经典主题有区别 , 就意味着所有 windows 下的测试都要乘 2.

 

 

希望看到您的想法,请您发表评论x