首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用position:absolute设置输入宽度

使用position:absolute设置输入宽度
EN

Stack Overflow用户
提问于 2009-11-10 23:08:54
回答 4查看 15K关注 0票数 13

一个简单但恼人的问题--我正在尝试使用绝对定位来设置inputtype=text宽度(即右:10px;左:10px),但我不能让它玩球。

有没有人有办法让它重整旗鼓?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2009-11-10 23:32:14

实际上,您所做的一切都很好。您只需要记住设置父元素的位置即可。

代码语言:javascript
复制
<div>
   <input type="text">
</div>

然后对其进行CSS:

代码语言:javascript
复制
div {
    width: 400px;
    position: relative;
}
input {
    position: absolute;
    left: 5px;
    right: 5px;
}

这将导致输入框为390px。

如果你设置div是灵活的,那么输入框也是灵活的。

编辑:似乎只在Chrome中有效,所以你需要将输入放在另一个元素中。这在FF和IE中也有效:

代码语言:javascript
复制
<div id="parent">
    <div><input type="text"></div>
</div>

使用此CSS:

代码语言:javascript
复制
#parent {
    position: relative;
    width: 400px;
}
  #parent div {
      position: absolute;
      left: 5px;
      right: 5px;
  }
    #parent div input {
        width: 100%;
    }

这具有预期的效果。有点像黑客,也许...

票数 26
EN

Stack Overflow用户

发布于 2009-11-10 23:10:57

据我所知,你想做的事不能那样做。其中一个值(左或右)应该足以满足位置,然后您只需设置widthheight

票数 3
EN

Stack Overflow用户

发布于 2009-11-10 23:16:14

正如Marco所说,你根本不能那样做。如果你不知道页面的宽度,你必须使用javascript来达到这个效果:

代码语言:javascript
复制
$('#myInput').css({ right: 10, position: 'absolute', width: $(document).width() - 20 })
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1708654

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档