WordPress個別サポート

最近のテーマや問い合わせフォームのプラグインでは多くがレスポンシブ対応でしょうから心配ないかもしれませんが、問題は自作のフォームです。

tableタグの中にフォーム要素をレイアウトして自力で問い合わせフォームを作る場合もあります。たとえば、次のようなタグです。

<form>
 <table>
  <tr>
   <th>お名前</td>
   <td><input type="text" name="uname"></td>
  </tr>
  <tr>
   <th>メールアドレス</td>
   <td><input type="text" name="from"></td>
  </tr>
  <tr>
   <th>タイトル</td>
   <td><input type="text" name="title"></td>
  </tr>
  <tr>
   <th>メッセージ</td>
   <td><textarea rows="5" name="naiyou"></textarea></td>
  </tr>
  <tr>
   <td colspan="2"><input type="submit" value="内容を確認"></td>
  </tr>
 </table>
</form>

言うまでもなく、PC画面で見た場合は問題ありません。

PC画面で表示した問い合わせフォーム

PC画面で表示した問い合わせフォーム

レスポンシブではないテーマでスマホ表示すると、次のように右端が切れるかもしれません。

スマホで見るとフォームの右端が切れる

スマホで見るとフォームの右端が切れる

抜本的にレスポンシブ対応するには、じっくり検討する必要がありますが、最も単純な“スマホ対応”は、テーブルの幅を画面いっぱいにする方法です。

table {
    width: 100%;
}

これで問い合わせフォームは画面に収まりますが、幅が狭く入力しづらいかもしれません。

フォームを画面幅におさめる“スマホ対応”

フォームを画面幅におさめる“スマホ対応”

そんなときは横に並んだテーブルのセルをバラバラにして単純に上から下に表示する方法があります。たとえば、次のようなイメージです。

各セルを上から下に表示する

各セルを上から下に表示する

このように表示するには、テーブルの各セルをテーブル形式のレイアウトではなくブロックとして表示します。

たとえば、次のようなCSSを使います。

@media (max-width: 480px) {
    table {
        width: 100%;
    }

    table th,
    table td {
        display: block;
    }
}

これにより、tableタグで作成したテーブルが表形式ではなくブロックとしてバラバラになり、上記の図のように上から下に表示されます。

実際に使うにはもう少しカスタマイズが必要な場合があります。
WordPressでお困りのときはご相談を
細かい質問からCSSやPHPのカスタマイズ、トラブル対応まで、この記事を書いた西沢直木が直接、WordPress個別サポートで対応します。
WordPress個別サポートの特徴
  • 最短で本日中に問題解決できます
  • 見積もり無料・料金は終了後の後払いです
  • 銀座教室・スカイプ・出張またはメールで対応します
カスタマイズがうまくいかないときは
お急ぎのときはWordPressメールサポートで対応します。ご活用ください。
こんなときはご相談ください(相談・見積もり無料)
  • サイトのデザインをカスタマイズしたい
  • CSS・PHPのカスタマイズがうまくいかない
  • 引っ越し(サーバー移転)したい
  • サイトをSSL対応(https://)したい
WordPress講座の問い合わせ先
WordPress講座申し込み
メールで問い合わせ

関連記事

スポンサーリンク