Justify elements using jQuery and CSS
http://www.jankoatwarpspeed.com/post/2008/07/09/Justify-elements-using-jQuery-and-CSS.aspx
テーブルを使わずにフォームの要素をきれいに並べる方法です。
調べたらすぐでましたが、備忘録的に。
やる事は簡単。ラベルの最大幅を調べて、その幅に合わせる方法です。
コードを見たほうが早いのでどうぞ。
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0.1//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="ja">
<head>
<meta http-equiv="Content-Type" Content="text/html;charset=UTF-8">
<script type="text/javascript" src="js/lib/jquery/jquery-1.4.4.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
// 最大幅を計算する
var max = 0;
$("label").each(function(){
if( $(this).width() > max ){
max = $(this).width();
}
});
// 最大幅でそろえる。
$("label").width(max)
.css({"float":"left", "clear":"both" });
});
</script>
</head>
<body>
<h2>formの幅自動調整</h2><br/>
<form>
<label>aaa</label><input type="text" name="a" /><br/>
<label>bbbbbb</label><input type="text" name="b" /><br/>
<label>c</label><input type="text" name="c" /><br/>
<label>dddd</label><input type="text" name="d" /><br/>
</form>
</body>
</html>