2016-09-12 6 views
5

以下の例では、安定したすべてのフレックスボックス対応ブラウザがページを正しくレンダリングしています。フレックスボックス「align-items:center」がChromeベータ版で動作しない

jsfiddle hereを参照してください。しかし、最新のChromeベータ(54)及びカナリア(55)バージョンで、同じ例がレンダリングされる

Firefox 48.0

:3色のブロックが均等section要素に分配されるため​​の

このように:

Chrome beta 54

これは次のバージョンでalign-itemsのための正常な動作になるだろうO fクロム?それとも、この特定のレイアウトにalign-itemsalign-contentの違いを片付け


UPDATE

Michael_B's answer ...このバグです。彼のjsfiddleは、レイアウトをテストするために使用する必要があります。それでも

、でも正しいフレキシボックスのプロパティで、クロームベータおよびカナリアレイアウトの道をレンダリングしていない、彼らは次のようになります。

enter image description here

+0

'align-items'は、項目の1つの行(したがって名前)に項目を揃えることになっています。複数の行(すべての内容)を中央揃えにするには、 'align-content:center;'を使用します。 – Paul

+0

'align-content:center;'は垂直センタリングの問題を修正しますが、要素はこのように均等に分布しません。 – DeanAlexRainier

+0

正しいですが、私は、ラインの中心ではなく上部にあることについての質問があると思いました。'align-content:space-around;を試しましたか?それはあなたに期待される結果を与えるでしょうか? – Paul

答えて

2

上記のレイアウトを達成するための適切な方法がalign-content: space-aroundである(demo )。

マルチラインフレックスコンテナを扱う場合は、align-contentを使用するプロパティです。スペックから

8.4. Packing Flex Lines: the align-content property

クロス軸に余分なスペースがあるときalign-contentプロパティが 内フレックスコンテナをフレックスコンテナのラインを揃え、どのようjustify-contentに似 主軸軸 内の個々の項目を揃えます。

このプロパティは、単一行のフレックス コンテナには影響しません。

複数行のフレックスコンテナだけが、十字軸 の空きスペースを持つことがあります。これは、一行のフレックスコンテナでは、 が自動的にスペースを埋めるために伸びるためです。

+0

'align-items'と' align-content'の間の明確化のためにありがとうございます。私は私の質問を編集します。しかし、私がChromeベータ版やCanary上で 'align-content'を使ってあなたの修正した例を見ると、間違ったレンダリングされたレイアウトがそのまま残っています。これを確認できますか? – DeanAlexRainier

+0

このPCでそのバージョンにアクセスできません。それは列方向で機能しますか? https://jsfiddle.net/v966v6pp/10/ –

+0

それは動作します。基本的に、このようなレイアウトの場合は、水平アイテムを格納するために余分な要素を導入する必要があります。 – DeanAlexRainier

関連する問題