锚定技巧在Firefox中不起作用

时间:2010-09-17 07:49:25

标签: css cross-browser

此代码在Firefox和Chrome中有不同的结果

<div style="border:1px solid red; width:50%; height:50px; position:relative;">
    <input type="text" style="position:absolute; left:0; right:20px;" />
</div>

alt text

如何使文本框在div左侧固定0px,在div的右侧固定20px?

注意:div的宽度必须为50%。

谢谢:)

4 个答案:

答案 0 :(得分:2)

摆脱left:0;

<div style="border:1px solid red; width:50%; height:50px; position:relative;">
    <input type="text" style="position:absolute; right:20px;" />
</div>

答案 1 :(得分:0)

“如何将文本框固定在div的右侧20px?”要么我得到你的意思,要么这个例子完全正常。

http://jsfiddle.net/GmMCQ/

答案 2 :(得分:0)

<div style="border:1px solid red; width:50%; height:50px; position:relative;">
    <div style="position:absolute; left:0; right:20px;">
        <input type="text" style="width: 100%" />
    </div>
</div>

<input>在某些浏览器中表现不佳,将其包装在div

答案 3 :(得分:0)

如何在外部<div>上使用框大小调整?这样您就可以避免添加额外的一个:

<div style="border:1px solid red; width:50%; height:50px; position:relative; padding-right:20px; box-sizing:border-box;">
    <input type="text" style="width:100%;" />
</div>

当然,这只适用于您不介意将填充添加到外部<div> ...

在FF 4.0中测试&amp; Chrome 10.0