2014-05-22 25 views
1

我可以使用固定大小的行div来自动调整大小以获取可用空间,但行div中的所有内容都在同一行中? (下面的第一行将与第二行具有相同的宽度,因为第二行中的输入会自动缩小)。自动调整文本框的大小以适应可用空间

<div class="row"> 
    <input type="text" /> 
</div> 

<div class="row"> 
    <span class="leftText">Text</span> 
    <input type="text" /> 
</div> 

http://jsfiddle.net/CqCax/

+0

你允许更改HTML? – Vucko

+0

@Vucko是的,我可以改变HTML,如果它会更容易。 – pkr298

+0

这是一个有趣的问题:D – Prashank

回答

2

试试这个

- HTML

<div class="row"> 
    <input type="text" /> 
</div> 

<div class="row"> 
    <span class="leftText">Text</span> 
    <input type="text" /> 
</div> 

- CSS

* { 
    -moz-box-sizing: border-box; 
    -webkit-box-sizing: border-box; 
    box-sizing: border-box; 
} 
.row { 
    display:table; 
    width: 200px; 
} 
span { 
    width: 1%; 
    padding-right: 10px; 
} 
input, span { 
    display:table-cell; 
} 
input { 
    width: 100%; 
} 

http://jsfiddle.net/9aAse/4/

它有点怪异的方式寿。

+0

谢谢,就是我想要的。 – pkr298

+0

@ pkr298不客气;) – Prashank

+0

嗯,它似乎不适用于较大的宽度。 http://jsfiddle.net/9aAse/2/ – pkr298

1

当然可以。

display: -webkit-flex; 

全码: http://jsfiddle.net/frapporti/gXLeK/

+0

有趣。这很简单,但是如果它变得太大,它将左边的文本分成两行,我不能使用它。 – pkr298

+0

简单:http://jsfiddle.net/frapporti/gXLeK/ –

+0

这适用于Chrome。我已经尝试添加-ms css属性,但它似乎不适用于IE。 – pkr298

相关问题