フォーム要素とプロンプトテキストが揃っていない問題

フォーム要素とプロンプトテキストが揃っていない問題

最近のプロジェクトでは、多くのフォーム、特にチェックボックスとラジオボタンの作成が含まれます。しかし、フロントエンドの開発プロセス中に、単一の(チェック)ボックスとその背後のプロンプトテキストを設定なしでは揃えることができず、Firefox と IE の間に大きな違いがあることが判明しました。 vertical-align: middle を設定しても、完全に揃えることはできません。次の図に示すように:

そこで、オンラインでいくつかの Web サイトを調べたところ、次の図 (FF3.5) に示すように、この問題はよくあることがわかりました。

フォーム ページを含む多くの Web サイトでは、フォーム要素とプロンプト テキストを揃えることができないという問題があります。そこで私はこの問題を研究することにしました。まず、wheatlee の記事「vertical-align についてはそれぞれ意見がある」を検索しました。ウィートリー氏は記事の中で、垂直方向のセンタリングに関するいくつかの重要な点について言及しています。

1. vertical-align: middle を使用すると、要素の中心が周囲の要素の中心に揃えられます。

2. ここでの「中心」の定義は、画像の高さが当然半分で、テキストはベースラインから 0.5ex 上、つまり小文字の「x」の中心にある必要があるということです。ただし、多くのブラウザでは ex 単位を 0.5em と定義しているため、必ずしも x の正確な中心とは限りません (ベースラインなどの用語がわからない場合は、まず wheatlee の記事を読んでください)

この考え方に沿って、私が遭遇した問題と比較すると、最初に思い浮かんだのは、ブラウザが「チェックボックス」と画像をレンダリングするために同じルールを使用しているかどうか(チェックボックスを正方形の画像として扱っているかどうか)を確認することでした。次のコードを記述します。

<スタイル>
本文{フォントサイズ:12px;}
</スタイル>
<input style="vertical-align:middle;" name="test" type="checkbox">
<img style="vertical-align:middle;" src="testpic.gif" />
テストテキスト

コード内の testpic.gif は、チェック ボックスとまったく同じサイズの黒い画像です。 FF3.5での表示は次のようになります。


前のページ1 2 3 4 次のページ 全文を読む

<<:  MySQL での and or クエリの優先度分析

>>:  Docker の Windows ストレージ パス設定操作

推薦する

MySQL 権限とデータベース設計のケーススタディ

権限とデータベース設計ユーザー管理SQLyogを使用してユーザーを作成し、権限を付与する基本コマンド...

JavaScript の基礎: スコープ

目次範囲グローバルスコープ関数のスコープもし、スイッチ、のために、その間ブロックスコープスコープチェ...

vuex ベースのショッピングカート機能の実装

この記事の例では、ショッピングカート機能を実装するためのvuexの具体的なコードを参考までに共有して...

ボタンと入力タイプの違いと注意点

<button> タグ<br />定義と使用法<button> ...

MySQL 8.0.18 インストール構成の最適化チュートリアル

MySQLのインストール、設定、最適化は参考用です。具体的な内容は次のとおりです。 MySQL ダウ...

モバイルウェブサイトの開発に関するいくつかの結論

ウェブサイトのモバイル版には、少なくともいくつかの基本機能が必要です。 1. ページの適用性の問題:...

MySQL 整合性制約の例の詳細な説明

この記事では、MySQL の整合性制約について説明します。ご参考までに、詳細は以下の通りです。メイン...

MySQL 5.7 で業務を停止せずに従来のレプリケーションを GTID レプリケーションに変更する例

GTID の利点により、従来のファイル POS ベースのレプリケーションを GTID ベースのレプリ...

iframe パラメータの説明と例

<iframe src=”test.jsp” width=”100″ height=”50″ ...

JavaScript デザインパターン 責任連鎖パターン

目次概要コードの実装パラメータ定義成し遂げる責任連鎖パターンの実装改善概要責任チェーン パターンは、...

IDEA を MYSQL データベースに接続するための構成時に失敗する問題の解決策

この記事では、主に、IDEA を MYSQL データベースに接続するための構成時に失敗する問題の解決...

SQL 挿入文の書き方の説明

方法 1: INSERT INTO t1(field1,field2) VALUE(v001,v00...

Linux で FastDFS を使用してイメージ サーバーを構築する

目次サーバー計画1. システムコンポーネントをインストールする2. fastdfsをインストールする...

ローカルサーバーを構築するためのwebpack-dev-serverの実装

目次序文webpack-deb サーバーwebpack-dev-server 起動エラー解決策1解決...

MySQL ストアド プロシージャ、カーソル、トランザクションの例の詳細な説明

MySQL ストアド プロシージャ、カーソル、トランザクションの例の詳細な説明以下は私が作成した M...