web-dev-qa-db-ja.com

CSSにフロートセンターがないのはなぜですか?

CSSにはフロートセンターがないことがわかり、少しがっかりしました。しかし、なぜだろうかと自問するしかありません。多くの人々がこれをコンテンツのセンタリングに使用したいのですが、動的なページサイズでたくさんのブロックを行にフロートするために使用したいと思いました。残念ながら、フロートセンターがないと、片側に余分なスペース(完全なブロックの一部が収まらない)があるため、見栄えが悪くなります。このプロパティの欠落により、フロートの意図した使用が損なわれるのは悲しいことです。

フロートセンターがない理由がわからず、技術的な理由かフロートセンターが標準に含まれていない理由があるかどうか疑問に思っていました。

17
Kevin Cox

フロートはコンテンツフローから要素を取り出し、可能な限り左/右に配置するため、フロートセンターはありません。フロート自体は物を横に動かすだけです。この最後の部分は100%ではありませんが、印刷と関係があると思います。私は、フロートのアイデアが印刷業界からとられたことを知っています。

3
albert

float: leftを使用する代わりに、個々の要素でdisplay: inline-blockを使用し、コンテナを中央に配置します。

http://jsfiddle.net/ExplosionPIlls/rAkNY/5/

9
Explosion Pills

はい、フロートセンター/ミドルはありません。W3Cが答えを持っているかもしれません。

有る <center>タグが、もはやありません。

<center>タグはHTML 4で非推奨になり、それを使用するといくつかの異なる問題が発生します。 HTML中心の要素は、ブラウザごとに異なる表示ができ、タグを使用するとページの読み込み時間が長くなります。また、多用するとサイトの再設計が複雑になります。数百のタグを削除するのは、スタイルシートの1つのスタイルルールを変更するよりも時間がかかります。

このタグは、何年も前に公式に廃止されましたが、下位互換性機能によりほとんどのブラウザで認識されています。ええ、もし何かがあれば、それは中央に置かれます。ただし、将来を保証するために、代わりに最新のCSSセンタリング方法を使用する必要があります。

使用する margin:0 auto;

他の何かをセンタリングする場合、margin:0 auto;ほとんどの場合、要素は中央に配置されます。 (クイックノート:これを機能させるには、要素に宣言された幅が必要です。)

マージン:0自動。ルールは、上マージンと下マージンが0、および自動左マージンと右マージンの省略形です。自動左マージンと右マージンが一緒に機能して、エレメントをコンテナの中央に押し込みます。

3
Krish

コンテンツを中央に配置する場合:
1。 cssプロパティを設定表示:インラインブロックまたはインライン各コンテンツアイテムに。
2。 cssプロパティtext-align:centerを親ノードに設定します。

0
Robert