子divは4つあります。このブロックの一部の子要素を右側に移動させます。
First Text | Third Text
Second Text | Fourth Text
HTML構造:
<div class="col one">First Text</div>
<div class="col two">Second Text</div>
<div class="col three">Third Text</div>
<div class="col fourth">Fourth Text</div>
私はにできる午前、彼らはこの方法のようになり、モバイルで
First Text | Second Text | Third Text | Fourth Text
:これらは、この方法のようにデスクトップに表示されます複数の方法でこのシナリオを達成してください。しかし、問題は、既存のプロジェクトです。私はHTML構造を変更することが許可されていません。このシナリオはCSSだけで可能ですか(CSSフレックスや他の方法など)?
N:B:divの高さは動的なので、position: absolute;
を使用すると適切ではありません。私はjQueryを使ってdivの高さを計算してみましたが、他のdivの配置にはこれらの値を使用しました。しかし、データ、要素などは動的な方法(ng-repeat way of angularjsのようなもの)から来ているので、ページ読み込み後にこれらの値を取得できませんでした。これらの複雑さのために、私は適切なCSSソリューション(ある場合)を探しています。
更新:
私は一つのことを言及するのを忘れてしまいました。そのために残念。 2つのdivの間に余分な垂直スペースはありません。
それは次のようにする必要があります:あなたはフレキシボックスを使用することができますので、
は(@Johannesによる)
「高さが動的である」ので、どのように彼らは、モバイルに整列する必要があるでしょうか? – fcalderan
この '.col { の値を変更すると、あなたのCSSは正常に動作するようです。 float:なし; } 'これに' .col { 幅:50%; float:left; } ' - https://jsfiddle.net/f95mqs8L/4/ – Andrew
2番目のdivは1番目のdivの下に、4番目のdivは3番目のdivの下になければなりません。 – user1896653