css – width:auto

前端之家收集整理的这篇文章主要介绍了css – width:auto前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
新手CSS问题。我认为宽度:auto为显示:块元素意味着“填充可用空间”。然而,对于< input>元素这似乎不是这样的。例如:
<body>
<form style='background-color:red'>
<input type='text' style='background-color:green;display:block;width:auto'>
</form>
</body>

两个问题:

>有什么宽度的定义:auto是什么意思? CSS规范似乎模糊了我,但也许我错过了相关部分。
>有一种方法来实现我的输入字段的预期行为 – ie。填充可用空间像其他块级元素?

谢谢!

解决方法

< input>的宽度根据其size属性生成。默认大小是驱动自动宽度的。

你可以尝试宽度:100%,如下面的例子所示。

不填充宽度:

<form action='' method='post' style='width:200px;background:khaki'>
  <input style='width:auto' />
</form>

填充宽度:

<form action='' method='post' style='width:200px;background:khaki'>
  <input style='width:100%' />
</form>

尺寸较小,宽度较小:

<form action='' method='post' style='width:200px;background:khaki'>
  <input size='5' />
</form>

更新

这是最好的,我可以做几分钟后。它的1px关闭FF,Chrome和Safari,并完美的在IE。 (问题是#^& * IE应用边框的方式与其他人不同,因此它不一致)。

<div style='padding:30px;width:200px;background:red'>
  <form action='' method='post' style='width:200px;background:blue;padding:3px'>
    <input size='' style='width:100%;margin:-3px;border:2px inset #eee' />
    <br /><br />
    <input size='' style='width:100%' />
  </form>
</div>

猜你在找的CSS相关文章