JsFiddle を使用したいくつかの簡単なテスト (ところで、これまでに行ったことを確認できるようにサンプル コードを投稿してください) により、次のことがわかります。
<div style="width:100%;border:1px solid gold;">
<div style="width:100%; border:1px solid silver;">
<div style="float:left;width:45%">In1 <input style="width:90%;"></div>
<div style="float:right;width:45%">In2 <input style="width:90%;"></div>
</div>
<div style="clear:both;width:100%;border:1px solid silver;">
<div style="float:left;width:20%">In1 <input style="width:90%;"></div>
<div style="float:left;width:20%">In2 <input style="width:90%;"></div>
<div style="float:right;width:20%">In3 <input style="width:90%;"></div>
</div>
</div>
<div style="clear:both"> </div>
<table style="width:100%;border:1px solid gold;">
<tr>
<td style="width:49%;border:1px solid silver;">In1 <input style="width:60%"></td>
<td style="width:49%;border:1px solid silver;">In2 <input style="width:60%"></td>
</tr>
</table>
<table style="width:100%;border:1px solid gold;">
<tr>
<td style="width:29%;border:1px solid silver;">In1 <input style="width:60%"></td>
<td style="width:29%;border:1px solid silver;">In2 <input style="width:60%"></td>
<td style="width:29%;border:1px solid silver;">In2 <input style="width:60%"></td>
</tr>
</table>
こちら を参照してください。ご覧のとおり、どちらのバージョンもまったく適切ではありませんが、いつものように、テーブル ベースのレイアウトはより堅牢です。
主なことは、パーセンテージを計算することです。JS を使用しているため、これはかなり簡単です。ただし、ラベルも異なる可能性がある場合は、計算がかなり複雑になります。