html - 为什么 input 不能设置高度?
高洛峰
高洛峰 2017-04-17 13:26:54
[HTML讨论组]
高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复(7)
迷茫

这个问题我也遇到过,最后解决办法就是这样如下:

  <style>
    input[type=button] {
      appearance:button;
      -moz-appearance:button; /* Firefox */
      -webkit-appearance:button; /* Safari 和 Chrome */
      box-sizing:border-box;
      -moz-box-sizing:border-box; /* Firefox */
      -webkit-box-sizing:border-box; /* Safari */;
      padding: 0;
      width: 100px;
      height: 50px;
    }
  </style>
  <input type="button" value="0">
  <input type="button" value="0">

appearance属性将元素呈现为按钮。box-sizing:border-box;令浏览器呈现出带有指定宽度和高度的框,并把边框和内边距放入框中。

黄舟

谢谢邀请。input是行内标签。你可以使用cssline-height设置高度。你试试看

天蓬老师

input可以设置宽高的,你的样式不起作用?

阿神

让它display:inline-block就好了

伊谢尔伦

input是行列块元素,是可以设置宽高的。
我刚刚出现了和你一样的问题,我自己觉得很奇怪,现在明白了,给个背景或者边框就可以看到了变化了。
当你设置width的时候,你马上就可以看到变化;
当你设置height没看到变化,你在给input添加一个background或者border就可以看到height的变化了。
不需要加什么前缀!

width: 100px;
height: 100px;
border: 2px dashed red;
PHPz

不同的浏览器渲染不一样,谷歌中默认为 inline-block
据我开发中遇到的情况看,safari 和低端 IE 对其的解释存在兼容问题,一般是设置 padding 填充来撑开高度的。

迷茫

猜测楼主用的是谷歌或火狐浏览器看的效果。谷歌或火狐浏览器中要设置input的高度,需要加两行代码:-webkit-box-sizing:border-box;-moz-box-sizing:boder-box;然后再写width:xxx;height:xxx才能起作用。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号