入力フィールドがあり、その中のテキストの色は黒です。 (私はjquery.placeholderを使用しています)そこのテキストが「E-Mail」だとしましょう
このフィールドをクリックすると、黒いプレースホールドテキストが消えます(jquery.placeholderのおかげです)。
このフィールドに入力されたテキストはすべて赤にしたいのですが、このフィールドの選択を解除すると、赤のままになります。
現時点では、「E-Mail」というテキストは黒で、入力したものはすべて赤です。これは素晴らしいことですが、選択を解除するとすぐに黒に戻ります。誰も私を助けることができますか?選択を解除した後でも、テキストを赤のままにしておきたい。ここに私のコードがあります
textarea:focus, input:focus {
color: #ff0000;
}
input, select, textarea{
color: #000;
}
2番目のスタイルをこれに変更します。
input, select, textarea{
color: #ff0000;
}
現時点では、フォーカスがオフになったらテキストをblack
に変更するようにフォームに指示しています。上記の救済策。
また、スタイルシートの:focus
および:hover
スタイルの前に通常の状態スタイルを配置することをお勧めします。これは、この問題の防止に役立ちます。そう
input, select, textarea{
color: #ff0000;
}
textarea:focus, input:focus {
color: #ff0000;
}
私はいつも次のように入力プロンプトを出します:
<input style="color: #C0C0C0;" value="[email protected]"
onfocus="this.value=''; this.style.color='#000000'">
もちろん、ユーザーがフィールドに入力し、フォーカスを変更してフィールドに戻ると、フィールドは再びクリアされます。そのようにするなら、それがあなたが望むものであることを確認してください。次のようにセマフォを設定することで、一度だけのものにすることができます。
<script language = "text/Javascript">
cleared[0] = cleared[1] = cleared[2] = 0; //set a cleared flag for each field
function clearField(t){ //declaring the array outside of the
if(! cleared[t.id]){ // function makes it static and global
cleared[t.id] = 1; // you could use true and false, but that's more typing
t.value=''; // with more chance of typos
t.style.color='#000000';
}
}
</script>
<input>フィールドは次のようになります。
<input id = 0; style="color: #C0C0C0;" value="[email protected]"
onfocus=clearField(this)>
プレースホルダーテキストを赤にしたい場合は、CSSで具体的にターゲットにする必要があります。
書く:
input::placeholder{
color: #f00;
}
交換:
input, select, textarea{
color: #000;
}
で:
input, select, textarea{
color: #f00;
}
またはcolor: #ff0000;
入力に色を追加するには、次のcssコードを使用します。
input{
color: black;
}