10

左揃えのラベルと右揃えのフォーム コントロールを表示するフォーム レイアウトがあります。フォーム コントロール (この場合は ) で float:right を使用して動作させようとしてから、clearfix クラスを適用しようとしましたが、選択ボックスで clearfix が動作していないようです。

ここに何か問題がありますか、それとも選択要素で clearfix が機能しないと予想されますか?

ただし、これを行うと、選択ボックスは含まれている div の下部からはみ出します。

私のコード:

<style type="text/css">
#category-select {
left: 0px;
top: 0px;
width: 350px;
border: 1px solid #666;
}
select#category {
float: right;
}
select.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
</style><!-- main stylesheet ends, CC with new stylesheet below... -->
<!--[if IE]>
<style type="text/css">
  select.clearfix {
    zoom: 1;  
  }  
</style>
<![endif]-->

<div id="triage">
    <div id="category-select">
          Category: 
          <select class="ipad-dropdown clearfix" id="category" name="category">
                <option value="A">A - Emergency
                <option value="B">B - Urgent
                <option value="C">C - ASAP
                <option value="D" selected>D - Standard
          </select>
    </div>
</div>
4

2 に答える 2

6

要素が最も高いものである場合select、ラベルをフロートしないのはなぜですか? のテキストではなく、実際にラベルにすることもできますdiv。CSSは次のとおりです。

#category-select {
    left: 0px;
    top: 0px;
    width: 350px;
    border: 1px solid #666;
    text-align: right;
}
#category-select label {
    float: left;
    margin: 1px;
}

HTMLは次のとおりです。

<div id="triage">
    <div id="category-select">
        <label for="category">Category:</label>
        <select class="ipad-dropdown clearfix" id="category" name="category">
            <option value="A">A - Emergency</option>
            <option value="B">B - Urgent</option>
            <option value="C">C - ASAP</option>
            <option value="D" selected>D - Standard</option>
        </select>
    </div>
</div>

これがデモです。

于 2011-12-08T00:37:13.690 に答える
0

select要素をフローティングにしているので、それは含まれているdivの高さに影響を与えなくなります。含まれている要素にいくつかのパディングを追加してみてください:http://jsfiddle.net/LZVhN/1/(選択にいくつかの相対的な位置も追加されました)

于 2011-12-07T22:54:43.433 に答える