我想設計一些內容塊的交錯佈局,其中每個塊的寬度完全相同,但可能有不同的高度。但是,每個項目都是連續的,因此它們需要從左到右或多或少地清晰(即:第1欄有項目1和4,第2欄有項目2和5,第3欄有項目3)創建一個沒有JavaScript的響應交錯行設計
這是我的想法:http://oi59.tinypic.com/24b66hw.jpg
這是我的第一個想法:
<?php
$arr = array();
$arr[] = array('title' => 'Day 1', 'img' => '/image1.png', 'text' => 'Text for item 1');
$arr[] = array('title' => 'Day 2', 'img' => '/image2.png', 'text' => 'Text for item 2');
$arr[] = array('title' => 'Day 3', 'img' => '/image3.png', 'text' => 'Text for item 3');
$arr[] = array('title' => 'Day 4', 'img' => '/image4.png', 'text' => 'Text for item 4');
$arr[] = array('title' => 'Day 5', 'img' => '/image5.png', 'text' => 'Text for item 5');
$cols = array();
$cols[0] = array();
$cols[1] = array();
$cols[2] = array();
for($x = 0; $x <= count($arr); $x+=3) {
$cols[0][] = $arr[$x];
if (isset($arr[$x+1])) {
$cols[1][] = $arr[$x+1];
}
if (isset($arr[$x+2])) {
$cols[2][] = $arr[$x+2];
}
}
foreach($cols as $key => $col) {
echo '<div class="col'.$key.'">';
foreach($col as $item) {
echo '<div class="row-item">';
echo 'Title: '.$item['title'].'<br />';
echo 'Image: '.$item['img'].'<br />';
echo 'Text: '.$item['text'];
echo '</div>';
}
echo '</div>';
}
?>
這會產生這樣的:不幸的是
<div class="col0">
<div class="row-item">
Title: Day 1<br>
Image: /image1.png<br>
Text: Text for item 1
</div>
<div class="row-item">
Title: Day 4<br>
Image: /image4.png<br>
Text: Text for item 4
</div>
</div>
<div class="col1">
<div class="row-item">
Title: Day 2<br>
Image: /image2.png<br>
Text: Text for item 2
</div>
<div class="row-item">
Title: Day 5<br>
Image: /image5.png<br>
Text: Text for item 5
</div>
</div>
<div class="col2">
<div class="row-item">
Title: Day 3<br>
Image: /image3.png<br>
Text: Text for item 3
</div>
</div>
,我遇到了一個問題,當我TOL d佈局必須具有響應性,並且在較小的屏幕上顯示時,只有一行而不是三個,如下所示:http://oi62.tinypic.com/2hfudj6.jpg
我似乎無法想出任何解決此特定問題的方法JavaScript在小屏幕上重新組織塊,或者單獨輸出只出現在小屏幕上的塊。
即使在移動視口中,是否需要在屏幕上顯示3列? – 2014-11-21 20:09:10
我可以推薦http://isotope.metafizzy.co/它的簡單和響應。 – 2014-11-21 20:18:13