2017-01-19 7 views
0

私は入力フィールドを持っています。その右側には、ユーザーに情報を表示する文字列があります。CSSで入力フィールドの一部のみを使用

<div class="my_div_class"> 
    <input class="my_input_class" type="text" placeholder="Search"> 
    <span class="my_span_class">6000 available</span> 
</div> 

相対位置と絶対位置を使用して、入力フィールド内にスパンを配置します。

ただし、ユーザーが長いクエリを入力すると、テキストはスパンテキストの下になります。

ユーザーが右余白の前のポイントに達したら、入力フィールドに水平スクロールを強制する方法がありますか?理想的にはjavascriptを使用しないでください。

答えて

1

padding-rightを入力ボックスに追加できます。

.my_div_class { 
 
    position: relative; 
 
    width: 200px; 
 
} 
 
.my_input_class { 
 
    width: 100%; 
 
    padding-right: 100px; 
 
    box-sizing: border-box; 
 
} 
 
.my_span_class { 
 
    position: absolute; 
 
    right: 0; 
 
    top: 0; 
 
}
<div class="my_div_class"> 
 
    <input class="my_input_class" type="text" placeholder="Search"> 
 
    <span class="my_span_class">6000 available</span> 
 
</div>

+0

ありがとう!私の例では、widthとpadding-rightの組み合わせを追加する必要がありました。 padding-rightを追加するだけで、入力フィールドは単純に右に成長していて、問題はまだそこにありました。 – Bruno

+1

@ブリュノ私はまた、ボックスサイズ:ボーダーボックスを使用しました。この例では、パディングと枠線が幅と高さの合計になります。 – Stickers

+0

はい、できます!それを完全に過小評価しました!ありがとう – Bruno

1
.my_input_class { 
    padding-right: 1em; // Replace `1em` with the desired amount of padding 
} 
関連する問題