2016-06-30 8 views
2

display: flexulタグがあります。フレックス方向:列;は動作していません

flex-direction: column;で列で注文する必要がありますが、機能しません。子供

#nav li.four_columns ul.sub-menu li { 
    flex-basis: 25%; 
    /* white-space: nowrap; */ 
    /* overflow: hidden; */ 
    /* text-overflow: ellipsis; */ 
    /* border-bottom: none; */ 
} 

のコンテナ

#nav li.four_columns ul.sub-menu { 
    width: 600px; 
    display: flex; 
    -webkit-flex-direction: column; 
    flex-direction: column; 
    justify-content: flex-start; 
    align-items: flex-start; 
    flex-flow: wrap; 
} 

CSSの

CSSは私が助けに感謝します。ここで

+0

変更 'フレックスフロー:ラップ;' 'フレックスラップへ:ラップ;お返事のための' – LGSon

+0

@LGSonのおかげ。 私は 'flex-flow:wrap;'を 'flex-wrap:wrap;'にchagedしました。 –

答えて

5

はあなたの問題の源である:flex-flow: wrap

これはflex-directionおよび/またはflex-wrapの省略形プロパティです。

このプロパティの初期値はrow nowrapです。

flex-wrapのコンポーネントは、wrapと宣言されています。

これは、flex-directionコンポーネントがデフォルト値のままであることを意味します(row)。

したがって、フレックスアイテムは、ラップする行に水平に整列しています。解決策として

のいずれかを指定し、両成分:

flex-wrap: wrap 

また、重要な:あなたはすでに、ルールにflex-direction: columnを持っflex-flowし、使用を取り除くため、

flex-flow: column wrap 

OR、:フレックスアイテムを列方向に折り返したい場合は、コンテナの高さを定義する必要があります。固定された高さがなければ、フレックスアイテムはラップする場所を知らず、必要に応じてコンテナを拡大して単一の列にとどまります。

参考:

+0

ご返信ありがとうございます。それは理にかなっていますが、現在は1つの列しかなく、4つ必要です。 複数の列に分割する方法を教えてください。 –

+0

サブメニューのコンテナで 'height:375px'のようなものを試してみてください。 –

+1

ありがとう@Michale_B私は最大高さのルールを追加しました。 –

関連する問題