Windows 8ストアアプリで水平方向に柔軟な画面を作成しようとしています。いくつかのグループが水平方向に伸びており(外側のFlexboxに含まれています)、グループの下のさまざまなフィールドが垂直方向にリストされ、必要に応じて画面の下から上に折り返されます。 (一連の内部フレックスボックスに含まれています)。これは、グループ化されたWindows 8 ListViewに似たレイアウトですが、単一のデータアイテムに関連するフィールドを表示しており、特定のセクションにページの他の場所にListViewが含まれるため、リストビューを使用してデータを表示できません。
内側のフレックスボックスセクションが新しい列に折り返されるたびに問題が発生しました。折り返しフレックスボックスの後に配置されたフレックスボックスは、前のセクションの列幅ではなく、1列幅離れて表示されます。これは、次のスクリーンショットに示されています。
私が考えていたものとはまったく異なります!以下のようになります(オーバーフローのあるセクションに手動でマージンを設定して作成します)。
このページのHTMLは次のとおりです。
<section aria-label="Main content" role="main">
<div class="main-container">
<div id="n1" class="inner-container">
<div class="element"></div>
.. And so on
そしてCSSに関しては:
.test section[role=main] {
overflow-x: scroll;
overflow-y: hidden;
-ms-overflow-style:-ms-autohiding-scrollbar;
}
.main-container {
display: -ms-flexbox;
/*We will put a slight margin at the bottom of the page to keep elements from appearing too low*/
height: calc(100% - 60px);
}
.inner-container {
display: -ms-flexbox;
-ms-flex-direction: column;
-ms-flex-wrap: wrap;
margin-right: 50px;
}
.element {
border:solid;
width:150px;
height:150px;
}
#n1 .element {
background-color:red;
}
#n2 .element {
background-color:green;
}
#n3 .element {
background-color:blue;
}
#n4 .element {
background-color:goldenrod;
}
私が持っているフレックスボックスのセットアップで2番目の写真で私が目指していたものを達成する方法はありますか?そうでない場合は、ページ上のコンテンツを必要な範囲で水平方向に実行できるようにする別の方法はありますか?グリッドビューのように流動的で柔軟なアプリにしたいのですが、先ほど申し上げたように、それを使用することはできません。