• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

求好手给一个Metro风格布局

php 搞代码 3年前 (2022-01-24) 15次浏览 已收录 0个评论

求高手给一个Metro风格布局
用table,初始表格共3行6列
单元格三种规格:1×1 2×1 2×2 ,随机
如下图所示:

谢谢!
——解决思路———————-
给你个思路,自己调整去吧

$ar = array(<br />  array('1x2', '我是标题'),<br />  array('2x2', '我是标题'),<br />  array('1x2', '我是标题'),<br />  array('2x2', '我是标题'),<br />  array('1x1', '我是标题'),<br />  array('1x1', '我是标题'),<br />  array('1x2', '我是标题'),<br />  array('1x2', '我是标题'),<br />  array('2x2', '我是标题'),<br />  array('2x2', '我是标题'),<br />  array('1x1', '我是标题'),<br />  array('1x1', '我是标题'),<br />  array('1x1', '我是标题'),<br />  array('1x1', '我是标题'),<br />);<br />shuffle($ar);<br />$box = array(<br />  array(1, 1, 1, 1, 1, 1),<br />  array(1, 1, 1, 1, 1, 1),<br />  array(1, 1, 1, 1, 1, 1),<br />);<br />$res = array();<br />foreach($ar as $ind=>$item) {<br />  list($h, $w) = explode('x', $item[0]);<br /><br />  //从左上角开始查找摆放的位置<br />  $flag = 0;<br />  for($y=0; $y<count($box); $y++) {<br />    for($x=0; $x<count($box[$y]); $x++) {<br />      if($box[$y][$x] == 1 && isset($b<span style="color:transparent">/本文来源gaodai#ma#com搞*!代#%^码网%</span><sub>搞代gaodaima码</sub>ox[$y+$h-1][$x+$w-1]) && $box[$y+$h-1][$x+$w-1] == 1) {<br />        $flag++;<br />        break 2;<br />      }<br />    }<br />  }<br />  if($flag) {<br />    $res[$y][] = array('c' => $w, 'r' => $h, 'v' => $ind);<br />    for($i=0; $i<$h; $i++) {<br />      for($j=0; $j<$w; $j++) {<br />        $box[$y+$i][$x+$j] = 0;<br />      }<br />    }<br />  }<br />}<br /><br />echo "<table border="1" style='width:100%'>";<br />foreach($res as $row) {<br />  echo '<tr>';<br />  foreach($row as $cell) {<br />    echo "<th colspan="$cell[c]" rowspan="$cell[r]">{$ar[$cell['v']][1]}</th>";<br />  }<br />  echo '</tr>';<br />}<br />echo "</table>";<br />

搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:求好手给一个Metro风格布局
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址