CSSを垂直および水平方向に中央に集中させる方法
水平方向および垂直にDivを中央に配置するには、1。FlexBox:親コンテナを使用して表示します。 2。グリッドを使用してください:親コンテナを設定して表示します。グリッド、場所 - 項目の中心として。 3.絶対的な位置に変換を追加:子要素を絶対に、上部と左に50%に設定し、-50%を翻訳します。マージン:0 Autoは水平センタリングのみを達成できることに注意してください。
ページ内の水平および垂直に中央にdiv
することを望むことは、フロントエンドのレイアウトで一般的な要件です。実装するにはいくつかの方法がありますが、さまざまなシナリオで該当する方法はわずかに異なります。いくつかの実用的で理解しやすい方法があります。
FlexBoxですばやく実装します
FlexBoxは、最新のWebレイアウトで最も一般的に使用され、便利なツールの1つです。センターリングを簡単に実現するには、親コンテナにいくつかのプロパティを設定する必要があります。
。親 { ディスプレイ:Flex; justify-content:center; /* Horizontal Center*/ Align-Items:Center; /*垂直中心*/ }
このようにして、 .parent
( div
など)の子要素は自動的に中央に配置されます。
この方法は、ほとんどの最新のブラウザで機能し、非常に互換性もあります。プロジェクトが古すぎるブラウザバージョンをサポートする必要がない場合は、これが優先オプションになるはずです。
ヒント:特定の
div
のみを中心にしたい場合は、グローバルな変更なしに一時的に親をflex
ことができます。
グリッドレイアウトの使用も簡単です
CSSグリッドは、既にグリッドを使用している状況に適したセンターリング効果を実現する簡単な方法も提供します。
。親 { ディスプレイ:グリッド; 場所 - 項目:センター; }
このコードは、垂直および水平の両方のセンタリングの両方を設定することと同等です。
グリッドはFlexよりも簡潔に書かれていますが、単純なセンタリングを行うだけの場合、この機能のレイアウトシステム全体を切り替える必要がない場合があります。
- 利点:文法はより直感的です。
- 短所:センターリングのような小さなことをするのは少し「小さな」です。
古典的な方法:絶対的な位置決め変換
div
がドキュメントストリームから分離されている絶対的な位置決め要素である場合、または親コンテナがflex
またはgrid
を設定できない場合は、次の方法を使用できます。
。子供 { 位置:絶対; トップ:50%; 左:50%; 変換:翻訳(-50%、-50%); }
この方法は、ポップアップウィンドウ、フローティングレイヤー、その他のシナリオに適しています。
親コンテナのディスプレイモードに依存していないため、より柔軟ですが、親がposition: relative
あることを確認するなど、ポジショニングコンテキストを手動で処理する必要があります。
マージンを忘れないでください:0自動は水平方向にのみ中心にすることができます
初心者にとってよくある間違いはmargin: 0 auto
垂直に中央に配置できると考えることです。実際、それは水平の中心を制御することしかできず、有効にするために幅と一致する必要があります。
。子供 { 幅:200px; マージン:0 Auto; }
ブロックレベルの要素を水平に中央に配置するだけであれば、それは問題ありません。ただし、同時に垂直に集中したい場合は、別の方法に変更する必要があります。
基本的にこれらの一般的な慣行。特定の状況に応じて、最も適切なものを選択してください。フレックスとグリッドは最も便利であり、従来のポジショニング方法は、使用方法に応じてより柔軟です。
以上がCSSを垂直および水平方向に中央に集中させる方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undress AI Tool
脱衣画像を無料で

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











ariaattributesenhancewebaccessibility forusers withdisabilitivitionsividing additionalsalsalsivation-assivetechnologies.theyareneedededemodernjavascript-heavycomponentsは、ult inacsibulitive featuresiveturefillements、およびarriafillを維持することができます

Parcelは、箱から出てくるゼロコンフィ分のフロントエンドパッケージツールです。インテリジェントなデフォルト値を使用して、JS、CSS、画像などのリソースを自動的に処理します。 BabelまたはPostCSSの手動構成は必要ありません。開発サーバーを起動するか、生産バージョンを構築するために、エントリファイルを指定する必要があります。 React、TypeScript、SASSなどの複数の言語とリソースタイプをサポートしています。パフォーマンスを向上させるためにRustによって達成されたマルチコアコンパイルを使用し、ホットアップデート、クリアエラープロンプト、HTTPSローカル開発などの友好的な体験を提供します。構成要件が低いプロジェクトやシナリオをすばやく構築するのに適していますが、高度にカスタマイズされた要件の下でWebpackやViteほど適用されない場合があります。

フロントエンドでは、その動作環境が複雑で変更可能であり、問題を再現することは困難であるため、ログと監視が必要です。ログはすぐに問題を見つけ、エクスペリエンスを最適化できます。 1.一般的なログタイプには、エラーログ(JSエラーレポート、リソース読み込み障害)、動作ログ(ユーザー操作パス)、パフォーマンスログ(読み込み時間、FP、FCP)、カスタムログ(ビジネスポイント)が含まれます。 2.フロントエンド監視を実装する手順には、キャッチングの例外、パフォーマンスデータの収集、ログの報告、集中管理、ディスプレイが含まれ、ユーザープロセスを追跡するための一意の識別子をもたらすことをお勧めします。 3.実際に使用すると、過剰な収集、プライバシー保護、誤った凝集、およびSourceMapを組み合わせてスタック情報を解析して問題を正確に見つけることを避けるために注意を払う必要があります。

重要なポイントについて直接話しましょう。リソースのマージ、依存関係の削減、およびキャッシュの利用は、HTTP要求を減らすためのコア方法です。 1. CSSとJavaScriptファイルをマージし、構築ツールを通じて生産環境のファイルをマージし、開発モジュラー構造を保持します。 2。画像スプライトまたはインラインBase64画像を使用して、静的な小さなアイコンに適した画像要求の数を減らします。 3.ブラウザのキャッシュ戦略を設定し、リソースのロードをCDNで加速してリソースの読み込みを高速化し、アクセス速度を向上させ、サーバー圧力を分散させます。 4.読み込み= "lazy"または非同期ロードスクリプトの使用など、非批判的なリソースの読み込みを遅らせ、初期リクエストを削減し、ユーザーエクスペリエンスに影響を与えないように注意してください。これらの方法は、特にモバイルまたは貧弱なネットワークで、パフォーマンスの読み込みを大幅に最適化できます

Reactコンポーネントをテストするための鍵は、適切なツールを選択し、検証のためにユーザーの動作をシミュレートすることです。 1. JestやReactTestingLibrary(RTL)などの主流ツールを使用して、ユーザーイベントとの相互作用の信頼性を向上させます。 2.単体テストを書き込むときは、レンダリングを介してコンポーネントをレンダリングし、画面を使用してノードをクエリし、結果をアサートします。 3. fireeventまたはusereventを使用して、クリック、入力、その他の操作をシミュレートして、状態の変更を確認します。 4. Snapshotテストは、静的UI構造の変化検出に適していますが、行動テストを置き換えることはできません。これらの方法は、コンポーネントの安定性と保守性を効果的に改善できます。

Reduxは、JavaScriptアプリケーションの状態を中央に管理するために使用されるツールであり、大規模なプロジェクトのコンポーネント間の通信が頻繁であり、状態を維持するのが困難な状況に適しています。 1.単一のデータソースを提供すると、すべての状態が統一ストアに保存されます。 2。状態は読み取り専用であり、意図はアクションの説明を通じて更新されます。 3。純粋な関数還元剤を使用して、状態の変更を実行します。実際の開発では、reduxtoolkitとReact-Reduxが組み合わさって操作を簡素化することがよくありますが、すべてのプロジェクトを使用する必要はありません。グローバルな状態の乱用とレデューサーの副作用は避けるべきです。

Reactコンポーネントのライフサイクルは、マウント、更新、アンインストールの3つの段階に分割されます。各ステージには、対応するライフサイクルフック機能があります。 1.マウントフェーズには、状態を初期化するためのconstructor()が含まれます。Render()はJSXコンテンツを返し、componentDidMount()はデータ要求の開始またはタイマーの設定に適しています。 2。更新フェーズには、render()が含まれてUIを再レンダリングします。 ComponentDidupdate(PrevProps、Prevstate)は、状態の変更に従って新しいデータを取得するなど、副作用操作を処理するために使用されます。 3.アンインストールフェーズはcomponentwillunmount()です。これはタイマーのクリーニングに使用されます

PropdrilingInReacthappensispassed -hultiprecompontelyersunnnnilly.itoccursduetoreate’sunidirectionalectionaaldataflow、sunissusechechallenges.comonscenariosincludemesmes、apidata、apidata、またはrauthattattattattattattathmes、
