私は最終日、登録フォーム用の CSS をすべて素晴らしく直感的にするために取り組んできましたが、乗り越えられないように見える問題が 1 つだけあります。
私の ID は contactForm で、入力に視覚的な合図を適用したり、値が受け入れられたかどうかをユーザーに知らせたりするための一般的な CSS ルールをいくつか設定しています。
#contactForm input.error, select.error {border: 1px solid #AB000B; background-color:#FFF2F2}
#contactForm input.valid, select.valid {border: 1px solid #3D993D; background-color:#E2FEDF}
これらは、検証プラグインが使用する一般的なエラーと有効です。
緑のチェックボックス(有効)または入力の右側にある赤いエラーメッセージもスタイルすると思います:
highlight: function(label) {
$(label).addClass('error');
},
success: function(label) {
label.text('OK').addClass('valid');
},
それらのCSSは次のとおりです。
#contactForm.jqv1 label.valid {
width: 16px;
background: url("../images/tick.png") center center no-repeat;
display: inline-block;
text-indent: -9999px;
}
#contactForm.jqv1 label.error {
font-weight: bold;
color: red;
}
.jqv1 クラスはフォーム全体に適用され、サイト内の他のページで使用されている一部の #contactForm デフォルトをオーバーライドします。
1 つのフォーム フィールドを除いて、すべてが期待どおりに機能します。使用中のユーザー名を入力すると、#contactForm の input.error スタイル (赤い境界線の明るい赤の背景) と #contactForm.jqv1 label.error (右側の太字の赤いメッセージ) が表示されます。有効なユーザー名を入力すると、反対の緑色の境界線と緑色のチェック マークが表示されます。
ただし、無効なユーザー名を入力してから有効なユーザー名に切り替えると、緑色のチェック マークが表示されますが、入力フィールドに「class=valid」が表示されず、緑色の境界線がトリガーされません。また、逆に同じことを行います(有効なユーザー名から無効なユーザー名まで、赤いエラーメッセージが表示されても境界線は緑色のままです)。
他のフィールドは正常に機能します。無効なエントリを修正すると、緑色の境界線と緑色のチェック マークが表示されます。問題のある検証ルールは、リモートを使用します。
sp_user: {
required: true,
rangelength: [4,50],
remote: {
cache:false,
async:false,
url: compath + "/rmtUserCFC.cfc?method=checkUsernameRemote&returnformat=json",
type: "post"
}
},
この最後の小さな CSS バグを潰すために私ができることについて何か提案はありますか?