ホームページ ウェブフロントエンド CSSチュートリアル CSSを使った各種中央寄せレイアウト方法まとめ

CSSを使った各種中央寄せレイアウト方法まとめ

Mar 10, 2017 am 10:52 AM
CSSのレイアウト方法

この記事では、CSSを使用したさまざまなセンタリングレイアウト方法をまとめています。興味のある方は参考にしてください。

この記事では、センタリングの状況を可変合計幅と可変コンテンツ幅に設定する場合について説明します。 (サイズを変更しても中央に配置されたままです)。

特記事項:position:absolute; を設定して要素にセンタリング効果を設定する場合、ブログで紹介した CSS3 メソッドに加えて、負のマージンを使用してセンタリングすることもできます。ただし、これは互換性の問題を解決しますが、これは にのみ適用されます。幅と高さの既知のケース (負のオフセットは要素の幅と高さの半分であるため)。幅と高さが変更されると、中央揃えの効果はなくなります。

これらのレイアウトの子要素は、属性設定によりデフォルトでコンテンツの幅になります。

この記事のすべての中央揃えの例では、CSS の実装についてのみ説明します。HTML コードは次のように統一されています:

1.1 inline-block with text-align

CSSを使った各種中央寄せレイアウト方法まとめ

<p class="parent">   
    <p class="child">demo</p>   
</p>
ログイン後にコピー

利点: IE6 および 7 と互換性を持たせるには、子要素の CSS に *display:inline と *zoom:1 を追加するだけで済みます。また、水平方向の中央に配置されます。これには、の効果を除去する必要があります。

1.2 マージン付きテーブル

.parent{   
    text-align: center;   
}   
.child{   
    display: inline-block;   
}
ログイン後にコピー

利点: 設定は非常に簡単です。サブ要素を設定するだけです。IE8+ をサポートします。IE6 および 7 をサポートする場合、サブ要素はテーブル構造。

transform 付き 1.3 abasolute

.child{   
    display:table;   
    margin: 0 auto;   
}
ログイン後にコピー

利点: 中央に配置された要素は他の要素に影響を与えません。欠点: CSS3 の新しい属性は IE9 以降をサポートしますが、それより前のバージョンのブラウザーはサポートしません。

2. 垂直方向の中央揃え

2.1vertical-align を使用したテーブルセル

CSSを使った各種中央寄せレイアウト方法まとめ

.parent{   
    position:relative;   
}   
.child{   
    position:absolute;   
    left:50%;   
    transform: translateX(-50%);   
}
ログイン後にコピー

利点:親要素を設定するだけで簡単、IE8+ と互換性あり互換性のあるバージョンのブラウザを使用している場合は、p をテーブル構造に置き換えることができます。

2.2 絶対は、transform で動作します

.parent{   
    display: table-cell;   
    vertical-align:middle;   
}
ログイン後にコピー

利点: 中央に配置された要素は、他の要素に影響を与えません。欠点: CSS3 の新しい属性は IE9 以降をサポートしますが、それより前のバージョンのブラウザーはサポートしません。

3. 水平方向 + 垂直方向のセンタリング

3.1 text-align を使用したインラインブロックと、vertical-align を使用したテーブルセル

CSSを使った各種中央寄せレイアウト方法まとめ

.parent{   
    position:relative;   
}   
.child{   
    position:absolute;   
    top: 50%;   
    transform: translateY(-50%);   
}
ログイン後にコピー

利点: 最初の 2 つの方法を包括し、互換性がある良いセックス! IE8+をサポートしており、それ以前のバージョンのブラウザとも互換性があります。短所: 設定がより複雑になります。

3.2 絶対変換付き

.parent{   
    display: table-cell;   
    vertical-align:middle;   
    text-align:center;   
}   
.child{   
    display: inline-block;   
}
ログイン後にコピー

利点: 中央に配置された要素は他の要素に影響を与えません。欠点: CSS3 の新しい属性は IE9 以降をサポートしますが、それより前のバージョンのブラウザーはサポートしません。

4. Almighty flex

css3 は新しいレイアウト属性を備えています。レイアウトはシンプルで強力ですが、パフォーマンスは IE10+ のみをサポートしており、主にモバイル端末で使用されます。

4.1 水平方向のセンタリング

.parent{   
    position: relative;   
}   
.child{   
    position: absolute;   
    left: 50%;   
    top: 50%;   
    transform: translate(-50%,-50%);   
}
ログイン後にコピー

4.2 垂直方向のセンタリング

/*当父元素设置display: flex;时,子元素为flex-item,默认为内容宽度。*/  
.parent{   
    display: flex;   
    justify-content: center;   
}   
/* 在设置子元素为margin: 0 auto;时,可删除父元素的justify-content: center;同样可以达到居中效果*/  
/*  .child{
        margin: 0 auto;   
    }*/
ログイン後にコピー

4.3 水平方向と垂直方向のセンタリング

.parent{   
    display: flex;   
    align-items: center;   
}
ログイン後にコピー

以上がこの記事の全内容です, みなさんのお役に立てれば幸いです 学習は役に立ちます。

以上がCSSを使った各種中央寄せレイアウト方法まとめの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

GraphQLキャッシングの使用 GraphQLキャッシングの使用 Mar 19, 2025 am 09:36 AM

最近GraphQLの作業を開始した場合、またはその長所と短所をレビューした場合、「GraphQLがキャッシュをサポートしていない」または

最初のカスタムSvelteトランジションを作成します 最初のカスタムSvelteトランジションを作成します Mar 15, 2025 am 11:08 AM

Svelte Transition APIは、コンポーネントがカスタムSVELTE遷移を含むドキュメントを入力または離れるときにアニメーション化する方法を提供します。

ショー、Don&#039; t Tell ショー、Don&#039; t Tell Mar 16, 2025 am 11:49 AM

あなたのウェブサイトのコンテンツプレゼンテーションの設計にどれくらいの時間に費やしますか?新しいブログ投稿を書いたり、新しいページを作成したりするとき、あなたは考えていますか

Redwood.jsと動物相を使用してイーサリアムアプリを構築します Redwood.jsと動物相を使用してイーサリアムアプリを構築します Mar 28, 2025 am 09:18 AM

最近のビットコインの価格が20k $ $ USDを超えており、最近30Kを破ったので、イーサリアムを作成するために深く掘り下げる価値があると思いました

CSSを使用して、テキストシャドウやグラデーションなどのテキスト効果を作成しますか? CSSを使用して、テキストシャドウやグラデーションなどのテキスト効果を作成しますか? Mar 14, 2025 am 11:10 AM

この記事では、影やグラデーションなどのテキスト効果にCSSを使用し、パフォーマンスのために最適化し、ユーザーエクスペリエンスの向上について説明します。また、初心者向けのリソースもリストしています。(159文字)

NPMコマンドは何ですか? NPMコマンドは何ですか? Mar 15, 2025 am 11:36 AM

NPMコマンドは、サーバーの開始やコンパイルコードなどの1回限りのプロセスまたは継続的に実行されるプロセスとして、さまざまなタスクを実行します。

Eleventyで独自のBragdocを作成します Eleventyで独自のBragdocを作成します Mar 18, 2025 am 11:23 AM

開発者としての段階に関係なく、私たちが完了したタスクは、大小を問わず、個人的および専門的な成長に大きな影響を与えます。

特異性について話すために(x、x、x、x)を使用しましょう(x、x、x、x) 特異性について話すために(x、x、x、x)を使用しましょう(x、x、x、x) Mar 24, 2025 am 10:37 AM

先日、エリック・マイヤーとおしゃべりをしていたので、形成期のエリック・マイヤーの話を思い出しました。 CSS特異性に関するブログ投稿を書きました

See all articles