CSS 縦横完全センタリング Manual_html/css_WEB-ITnose
センタリングは常に CSS における典型的な問題でした。なぜ実装がこれほど難しいのでしょうか?それで誰かに笑われました。問題は、方法がないということではなく、状況によると思います。さまざまな方法がありますが、どの方法を使用するかを理解するのは困難です。
だから、彼が少しでも楽になればと思い、この記事を書きました。
水平方向の中央揃え
インライン要素 (inline または inline-*) の中央揃え
親ブロックレベルの要素を基準にして中央揃えにすることができます
1
2
3
.center-children {
text-align : center ;
}
ブロックレベル要素(ブロックレベル)を中央に配置しますか?
margin-left と margin-right を auto に設定することで中央に配置できます (また、 width も設定します)。コンテナ全体に充填され、センタリング効果は見られません)、など。
1
2
3
.center-me {
margin : 0 auto }
ブロックレベルの要素がたくさんある場合は?
非常に均等なブロックレベルの要素を水平方向に中央揃えで並べる必要がある場合は、別の表示タイプを使用した方がよいでしょう。以下は、inline-block と flex を使用した例です。
オンライン例: http://jsfiddle.net/ourjs/0b6b7wt8/
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
< メインクラス = "インラインブロック-center" >
< div >
私は兄弟とブロックのような要素であり、一列に中央に配置されています。
div >
< div > ;
私は兄弟たちと同じような要素であり、私たちは兄弟たちよりも多くのコンテンツを持っています。 ;
私は、兄弟と並んでブロックのような要素です。 >
<
私は兄弟たちと同じように中心にいます
div >
私は兄弟たちと同じような要素です。行。私の中には兄弟よりも多くのコンテンツがあります
div >
<ディビジョン >
私は兄弟とブロックのような要素で、中心に並んでいます。
div >
メイン>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
ボディ {
背景 : #f06d06 ;
フォントサイズ : 80% ;
}
main {
背景 : 白 ;
マージン : 20px 0 ;
パディング: 10px ;
}
main div {
背景 : 黒 ;
色: ホワイト;
パディング: 15px ;
最大幅 : 125px ;
余白 : 5px ;
}
.inline-block-center {
text-align : center ;
}
.inline-block- center div {
表示 : inline-block ;
text-align : left ;
}
.flex-center {
表示 : flex;
justify-content : center ;
}
垂直居中
垂直居中在CSS中有点棘手
内联元素(inline or inline-*)居中、画像文本と链接那样的?吗?
有時侯元素可表现像垂直居中,只是它们有相等的上下パディング
1
2
3
4
.link {
パディングトップ: 30px ;
パディングボトム : 30px ;
}
何らかの理由でパディングが使用できず、テキストが実行されない場合は、line-height を使用して、高さと同等にテキストを削除できます。 2 3
4
5
.center-text-trick {
高さ : 100px ;
行の高さ : 100px ;
white-space : nowrap ;
}
複数行ですか?
上下のパディング方法でも複数行を中央揃えにすることができますが、この方法がうまくいかない場合は、これらのテキストのコンテナを表セルモードで表示させてから、テキストのvertical-align属性を整列に設定することができます。 Talbe のように
オンライン デモ: http://jsfiddle.net/ourjs/0fn2u4rc/
1
2
3
4
5
6
7
8
9
10
tr >
table >< div class = "center-table" > p&gt;私はCSS作成テーブルの複数のテキストを中心にしています。 3
4
5
6
7
8
9
10
11
12 13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
ボディ {
背景: #f06d06 ;
フォントサイズ: 80% ;
テーブル {
幅: 240px;
マージン: 20px;高さ: 250px;}
背景: 黒;
パディング: 20px;
/* デフォルトは垂直配置: 中央; */
}
.center-table {
表示: テーブルの高さ: 250px;
背景: 白;
幅: 20px;
.center-table p {
背景: 黒 ;
Padding: 20px;
border: 10px Solid White;
vertical-align: middle;
ブロックレベルの要素は垂直方向に中央揃えになります?
要素の高さはわかりますか?さまざまな理由から、Web ページのレイアウトの高さがわからないことはよくあります。
ただし、レイアウトの高さが固定されている場合は、次のように垂直方向に中央揃えにすることができます:
2 3
4
5 6
7
8
9
.parent {
位置 : 相対 ;
}
位置 : 絶対 ;
高さ : 100px ; : -50px ; /* そうでない場合ボックスモデルは次を使用しています: border-box; これを設定する必要があります */
}
要素の高さは不明です
不明ですが、幅の50%を押し上げることもできます
オンラインデモ: http://jsfiddle.net/ourjs/9sLf7p56/
1
2
3
4
5
6 7 8
.parent {
位置: 相対 ;
}
位置 : 絶対 ;
変換:
}
フレックスボックスは使えますか?
これは驚くことではありません、flexbox を使用する方がはるかに簡単です
1
2
3
4
5
<
<
私は親内で垂直方向に中央揃えされた、高さ不明のブロックレベルの要素。
12
13
14
15
16
17
18
19
20
21
22
23
ボディ {
背景 : #f06d06 ;
フォントサイズ : 80% ;
}
main {
背景 : 白 ;
高さ: 300px ;
幅: 200px ;
パディング: 20px ;
余白: 20px ;
ディスプレイ: フレックス;
flex-方向 : 列;
justify-content : center ;
サイズ変更: 垂直方向。
オーバーフロー : 自動 ;
}
main div {
背景 : 黒 ;
色: ホワイト;
パディング: 20px ;
サイズ変更: 垂直方向。
オーバーフロー : 自動 ;
}
同時水平和垂直居中
素子の宽度及び高さが固定されている場合
結果として素子の宽度及び高さが固定されている場合、先绝对居中、その後上移動及び左移動50%の宽度が必要です
1
2
3
4
5
6
7
8
9
10
11
12
13
.parent {
位置 : 相対 ;
}
.child {
width : 300px ;
高さ: 100px ;
パディング: 20px ;
位置: 絶対;
トップ : 50% ;
残り : 50% ;
マージン : -70px 0 0 -170px ;
}
元素の宽度高未知
如果你不知道高和宽度(可变的),你可使用transofrm属性在两个方向都平移负50%
1
2
3
4
5
6
7
8
9
10
.parent {
位置: 相対的;
}
.child {
位置 : 絶対 ;
トップ : 50% ;
残り : 50% ;
変換:translate( -50% , -50% );
}

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

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

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

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

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

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

ホットトピック











HTMLは、簡単に学習しやすく、結果をすばやく見ることができるため、初心者に適しています。 1)HTMLの学習曲線はスムーズで簡単に開始できます。 2)基本タグをマスターして、Webページの作成を開始します。 3)柔軟性が高く、CSSおよびJavaScriptと組み合わせて使用できます。 4)豊富な学習リソースと最新のツールは、学習プロセスをサポートしています。

HTMLはWeb構造を定義し、CSSはスタイルとレイアウトを担当し、JavaScriptは動的な相互作用を提供します。 3人はWeb開発で職務を遂行し、共同でカラフルなWebサイトを構築します。

webdevelopmentReliesOnhtml、css、andjavascript:1)htmlStructuresContent、2)cssStylesit、および3)Javascriptaddsinteractivity、形成、

Anexampleapalofastartingtaginhtmlis、それはaperginsaparagraph.startingtagsaresentionentientiontheyinitiateelements、definetheirtypes、およびarecrucialforurturingwebpagesandcontingthomedomを構築します。

GiteEpages静的Webサイトの展開が失敗しました:404エラーのトラブルシューティングと解像度Giteeを使用する

Y軸位置Webアノテーション機能の適応アルゴリズムこの記事では、単語文書と同様の注釈関数、特に注釈間の間隔を扱う方法を実装する方法を探ります...

HTML、CSS、およびJavaScriptは、Web開発の3つの柱です。 1。HTMLは、Webページ構造を定義し、などなどのタグを使用します。2。CSSは、色、フォントサイズなどのセレクターと属性を使用してWebページスタイルを制御します。

画像をクリックした後、散乱と周囲の画像を拡大する効果を実現するには、多くのWebデザインがインタラクティブな効果を実現する必要があります。特定の画像をクリックして周囲を作成してください...
