
jquery.validationEngine.jsを使用しています。
validationEngine.jquery.css
「.formError .formErrorContent」
スタイルシートを変更したり、または、
「data-prompt-position="inline"」
などを駆使して、
エラーコメントが
<input>の真下に出るようにしたり、または
コメントが長くなったら、横幅のサイズを変えたりとしていますが、
なかなかうまくいきません。
<input>によって
.formError.inline {}のスタイルシートを分けることができますでしょうか。
分けてみてもjsでCSSを設定しているためかまったく聞きません。
宜しくお願い致します。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
こんにちは。
回答がないみたいですので・・・validationEngineって使ったことがないですし、英語を読むのも苦手なので大雑把にテストしただけですが、何かのご参考にでもなれば。
一応、validationEngineはこれのことだと解釈しています。
https://github.com/posabsolute/jQuery-Validation …
どの程度の制御をなさりたいのかご質問文の情報だけではよくわからないのですが、
>コメントが長くなったら、横幅のサイズを変えたりとしていますが、
>なかなかうまくいきません。
程度のことであるのなら、widthを制限しておけばHTMLの特性として、文章が長くなれば自動的に折り返してくれるはずですけれど・・・?
とりあえず、個別にエラーメッセージの設定ができることを目標として考えてみました。
最終的には、それぞれに個別のCSSを適用できれば良いので、個々に指定可能なセレクタさえ設定できれば良い
ドキュメンテーションをざっと眺めてみると(読んでないけど)、「表示スタイルを変えたいときは、CSSをいじってね」みたいなことが書かれているので、スクリプトとCSSが干渉することのないようにきちんと作成されているようです。
コメントのdivは、エラーが発生する都度、生成/削除されているようで、文書内の該当input等の直前に挿入されるようです。
直後であれば、input(←idを設けていると思いますので)の隣接セレクタで特定が可能なのですが、直前だとうまくいきませんね。
ということで、以下の2種類の方法で試してみました。
1)label:nth-childを利用して個別に特定する。
2)スクリプトでバリデーション実行時にフックできる仕組みがあるようなので、それを利用して、メッセージに個別の識別子を設定する。(例えばinputのidをクラスとしてメッセージに設定するとか)
どちらの方法でもできましたが、確認中によく見てみると、すでに個別の識別子が設定されているみたい。
作者さんがちゃんとそこまで配慮してくれているようでした。(気付かんかった)
メッセージのdiv要素のクラスに、「input要素のid」+"formError" という個別のクラス設定がされていました。
ということで、なんのことはない。それを利用すればセレクタで個別に指定可能になっています。
(ドキュメントをちゃんと読めばどこかに書いてあったのかも。)
デモの中にある「demoAdjustments」を例にしてみると、
そのままだと、添付図の左側になりますが、2番目と3番目を個別に指定してみると右側のようになります。
標準のとなるものはメインのCSSで設定し、個別指定のものは変わる部分だけを指定すればよいです。
(個別指定がきちんと反映されるように、セレクタの詳細度にご注意。)
指定しているのは、背景色、文字色、文字サイズ・太さ、ボックスの幅など。
背景色は吹き出し状の矢印部分が別要素になっているので、そちらも指定しておかないと違う色のつぎはぎになっちゃいます。
※ ご参考までに、添付図で追加したCSSは以下です。
/* input#req2用のCSS */
.req2formError .formErrorContent {
background-color:moccasin; color:blue;
font-size:14px;
}
.req2formError .formErrorArrow div {
background-color:moccasin;
}
/* textarea#add用のCSS */
.addformError .formErrorContent {
background-color:lightgreen; color:red;
font-size:16px; font-weight:bold;
min-width:30px; max-width:60px;
}
.addformError .formErrorArrow div {
background-color:lightgreen;
}

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript jQueryでのレスポンシブが綺麗に動かない 3 2022/06/21 11:08
- JavaScript jQueryで同じクラス名のものを別物として扱いたい 1 2022/06/17 14:14
- HTML・CSS 吹き出し 下記の吹き出しのスタイルシートについて 下記のスタイルシートは左側にアイコンがでる使用にな 1 2022/11/12 17:55
- JavaScript 階層別の組織図の自動作成について 1 2022/10/26 13:42
- AJAX JavascriptからPHPへのAjax通信でnullが返ってくる 3 2022/08/03 22:00
- JavaScript jqueryを使ったスムーススクロールのコードを書いたのですが、HTMLコード内にある、a butt 2 2022/04/14 10:59
- Visual Basic(VBA) Selenium Basicの件 5 2023/04/10 20:55
- HTML・CSS スクロールすると追従する画像のコードを書いているのですが、追従する画像の大きさの調節が上手くいきませ 2 2022/04/18 12:52
- HTML・CSS 下にスクロールしても、追従するボタンのコードを書いたのですが、ボタンの中の画像が半分しか表示されない 1 2022/04/16 21:31
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
タグが反映してくれません
-
Excel VBA メール作成について ...
-
ブラウザ依存のボタンのデザイ...
-
ビルダーでCSSで指定した文...
-
リストの前後の行間をなくす方...
-
IFRAME にsrc でデータを呼び出...
-
行間幅、文字幅を設定するスタ...
-
cssでの文字の設定
-
文字の位置、上下のマージンが...
-
サニタイジング化されてしまっ...
-
perlの文字サイズ
-
background-color: #ddd;の意味...
-
全角半角含めて等幅で表示したい
-
アコーディオンメニューが思う...
-
ホームページビルダー作成HPがi...
-
スタイルシートで指定したアン...
-
スタイルシートでの段組指定に...
-
下付き文字にするには?
-
outlook 文字を揃えたい。tab...
-
マイクロ(μ)の文字を半角で出...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
リストの前後の行間をなくす方...
-
文字の位置、上下のマージンが...
-
Excel VBA メール作成について ...
-
background-color: #ddd;の意味...
-
Format 関数 表示書式指定文字...
-
リンク文字
-
Excel VBA メール作成について ...
-
テキストエリア内の文字の装飾
-
HTMLで特定の文字だけ色を変え...
-
全角半角含めて等幅で表示したい
-
<pre>にフォントを・・・。
-
fontサイズ指定の ”-(マイナ...
-
htaコードですが、IE6に対応さ...
-
jquery.validationEngine.jsカ...
-
特定の文字のみcssを適用するに...
-
CSSを一部無効にしたい
-
CSSのid名class名の重複回避方...
-
テキストボックス途中で切れて...
-
フォームのスタイルについて教...
-
CSSで14px/1.4の部分の記述は正...
おすすめ情報