
WPホームページ研究所運営サポートチーム監修のオムスビ(@OMUSUVIcom)です。
本日は業務メモです。Contact Form 7でローディングアイコンを中央位置にセンタリングさせて表示する方法。コーディング状況にもよってレイアウト調整がむずかしい場面もあるのでざっと解説いたします。
Contact Form 7でローディング画像を中央に表示する
下記の通りContact Form 7では読込み用のアイコンでボタン全体が左側へ寄るケースがあります。ちなみに下記は確認画面を表示させるカスタマイズをしている画面なので「確認画面へ進む」のボタンです。
このように右上部分に「ローディング画像用のアイコン」があるのでボタンが少しずれるわけですね。カンタンに言えばアイコンを含んでの中央寄せなのでボタン単体で見ると左寄りになるという意味です。
ローディングアイコンを下側へずらせばボタンの位置は真ん中に調整できます。
カスタマイズはCSSのみで行えます。方法はレイアウトの相対指定ですね。
div.wpcf7 .ajax-loader {
position: absolute;
}
上記の記述でローディングアイコンをボタンに対して中央位置へ変更可能です。ただ、この記述だけではボタンとローディングアイコンの画像がボタンにかぶってしまうので少しだけ調整しなければなりません。そこで次にボタン全体を包んでいるタグに対して「position: relative;」を指定。もしhtmlの構造でタグがなければボタンの外側に「div」などをボタン外側へ追記すればOK。アイコン位置を指定する下準備です。
フォーム側へ任意のhtmlタグを追記後にCSSも微調整。下記の通りですね。ローディングアイコンを表示させる位置指定はボタンの高さに合わせて値を変更していきましょう。下記は52pxを指定した例です。
.buttonWrapper {
position: relative;
}
div.wpcf7 .ajax-loader {
position: absolute;
top: 52px;
}
もし最新版Contact Form 7であればもう少し指定もシンプルです。ボタンとアイコンをセンタリング指定のみ。ボタン側のクラス名はフォームの実装状況によっても違うのでhtml構造に合わせればOK。
.button {
display: block;
text-align: center;
}
.wpcf7-spinner {
display: block;
margin: 5px auto 0;
}
ただ、上記「display: block;」の方法だとボタン直下にローディング画像の隙間ができます。どちらの方法も単純にレイアウトを後からCSSでコントロールしているだけなので記述はアイデア次第かもしれません。
レイアウト調整時はぜひお試しください。
最新式の無料プラグインを事前公開
WordPressは公式サイトに登録済みのプラグインだけで全機能を補足しきれません。当サイトでは使いやすさを追求した魅惑的なプラグインを無料でダウンロードいただけます。運営ホームページのマーケティング力をさらに高めるチャンスです。まずは無料でDLしてお試しくださいませ。
→ 改良されたプラグインを確認する