jQuery テーブルを使わずにフォームを整列させる

更新日:

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>

-jQuery
-

Copyright© 打ち聞かせ , 2024 All Rights Reserved Powered by STINGER.