CSS を使用してオブジェクトの垂直方向の中央揃えを実現するにはさまざまな方法がありますが、難しいのは適切な方法を選択することです。私がこれまで見てきた良い方法と、中心にある良いウェブサイトを作成する方法を以下に説明しましょう。
CSS を使用して垂直方向の中央揃えを実現するのは簡単ではありません。一部のメソッドは一部のブラウザでは機能しません。以下では、オブジェクトを垂直方向の中央に配置する 5 つの異なる方法と、それぞれの長所と短所を見ていきます。 (簡単な説明については、テスト ページを参照してください。)
このメソッドは、一部の div の表示モードをテーブルに設定するため、テーブルのvertical-align プロパティを使用できます。
コンテンツはここにあります
C SS
1
| ラッパー {display:table ;} #cell {display:table-cell;vertical-align:middle;}
|
短所:
方法 2:
高さが固定されているため、コンテンツに overflow:auto を指定すると、コンテンツが多すぎる場合にスクロール バーが表示され、コンテンツがオーバーフローするのを防ぐことができます。
コンテンツはここにあります
CSS
1
| コンテンツ { 位置:絶対上位:50 %; height:240px; margin-top:-120px; /* 高さの負の半分 */ }
|
欠点:十分なスペースがない場合、コンテンツは消えます (div が本文内にあり、ユーザーがブラウザー ウィンドウを縮小してもスクロール バーが表示されない状況と同様です)
方法 3
このメソッドでは、div はコンテンツ要素の外側に挿入されます。この div の高さを 50% に設定します。
コンテンツはフロートをクリアして中央に表示します。コンテンツはここにあります
1
floater {float:left; height: 50%; margin-bottom:-120px;} #content {clear :両方; 高さ:240ピクセル; 位置:相対;}
利点:
すべてのブラウザに適用可能
十分なスペースがない場合(例: ウィンドウが縮小されている場合)、コンテンツが切り詰められず、スクロールバーが表示されません
欠点:
私が考えることができる唯一のことは、追加の空要素の場合 (これもそれほど悪いことではありません。これは別のトピックです)
このメソッドは、position:absolute、固定幅と高さの div を使用します。この div は、top:0;bottom:0; に設定されます。ただし、高さが固定されているため、実際には上下の間隔を 0 にすることはできず、margin:auto; によって中央に配置されます。 margin:auto; を使用すると、ブロックレベルの要素を垂直方向に中央揃えにするのが簡単です。
コンテンツはこちら
CSS
1 |
コンテンツ { 位置:絶対トップ:0; |
方法 5
ここにコンテンツ
content {height:100px; line-height:100px;}
欠点:
テキストにのみ有効 (ブロックレベル)要素は無効です) )
複数の行がある場合、単語の区切りは悪化します
この方法は、ボタン テキストの中央揃えや単一行のテキストなどの小さな要素で非常に便利です。
私のお気に入りは方法 3 ですが、欠点はほとんどありません。コンテンツはフロートをクリアするため、他の要素をその上に配置することができ、ウィンドウをズームすると、中央に配置されたコンテンツが他の要素を覆うことはありません。例を参照してください。
CSS
1
フローター {float:left:height:50%; ; margin-bottom:-120px;} #top {float:right; width:100%; text-align:center;} #content {clear:both;
何が起こっているかがわかったので、シンプルだけど楽しい Web サイトの作成を始めましょう。最終的な外観は次のようになります: ステップ 1 これは xhtml コードです使用: A Center Company
--LODUCTS-CONTACT-About ページタイトル Holisticly Re -Gineer Value-ADDED ING AFTER PRO プロ セス中心のコラボレーションとアイデアの共有エネルギー的 有効な必須事項により、影響力のあるニッチ市場を簡素化します。強力なウェブ対応力を活用する前に、最先端の製品を使用して人的資本の高水準をシームレスに再捕捉します。すぐに使える情報です。 見出し 2顧客主導のプロセスではなく、カスタマイズされた Web 対応を効率的に採用し、プロアクティブなテクノロジに対してクロスプラットフォームの義務を積極的に強化します。企業全体のインターフェイス。電子市場に焦点を当てて、競争力のある戦略的テーマ領域を効率的に合理化します。付加価値市場に対して蛍光を使用して総合的なサービスを適切に再構築します。
著作権表示。こちら
ステップ 2: ここで、基本的な CSS を使用してページのスタイルを設定します。 HTML ページの上部にインポートされる style.css に次のコードを挿入します。
CSS
ご想像のとおり、問題を引き起こすブラウザは IE だけです。 IE 8 には余分なスペースがあります (作者が見逃した) その他のアイデア vertical-align を理解する、または「コンテンツを垂直方向に中央揃えにする方法 (しない)」 |