这可以成功吗? (列中多个ul)

时间:2012-07-17 21:11:26

标签: php mysql css internet-explorer

可以使用css3为safari和firefox工作,但也就是说没有它的一部分。我正在输出一个购物分类和子分类列表,每个列表都有一个单独的分类。

这就是我所拥有的(到目前为止还没有工作)。任何帮助都会受到欢迎。

<div style="float:left; width: 232px;">
<?
$rowcount = 1;                          
$strSql = "SELECT * FROM Category ORDER BY CategoryName ASC";
$r = $db->select($strSql);
while ($row=$db->get_row($r, 'MYSQL_ASSOC')) {  
    $CategoryID = $row['CategoryID'];
    $CategoryName = $row['CategoryName'];
    ?>
     <div style="width: 232px; background-color:#f2f2f2; padding: 5px; margin-top: 5px; -webkit-border-radius: 4px; border-radius: 4px; overflow:hidden; padding-left: 5px;">
          <h1><a href="/<?=$colour?>/<?=$CategoryURL?>/" ><?=$CategoryName?></a></h1>
            <ul>
                  <?                        
                  $strSql2 = "SELECT 
                  SubCategory.SubCategoryID,
                  SubCategory.SubCategoryName,
                  SubCategory.SubCategoryURL,
                  SubCategory.CategoryID
                FROM
                  SubCategory
                WHERE
                  CategoryID = $CategoryID
                ORDER BY
                  SubCategoryName";
                  // echo "<pre>$strSql</pre>";
                  $r2 = $db->select($strSql2);
                  while ($row2=$db->get_row($r2, 'MYSQL_ASSOC')) {
                      $SubCategoryID = $row2['SubCategoryID'];
                      $SubCategoryName = $row2['SubCategoryName'];
                      $SubCategoryURL = $row2['SubCategoryURL'];
                  ?>    
                  <li><a href="/<?=$colour?>/<?=$CategoryURL?>/<?=$SubCategoryURL?>/"><?=$SubCategoryName?> (<?=$rowcount?>)</a></li>
                  <?
                  $rowcount++;
                  if ($rowcount == 35) { echo"</ul></div><div style=\"float:left; width: 232px;\"><ul>"; $rowcount = 0;} 
                  } // end get SubCategory
                  ?>
               <? if ($rowcount == 0) { echo""; } else {echo"</ul>";} ?>
               </div>       
         <? } // end get category list
?>     
        </ul> <!-- END CATEGORY UL -->
  </div>
</div>

1 个答案:

答案 0 :(得分:1)

另一种方法是使用基于表格的布局,在这种情况下,我认为不会那么糟糕。表格适用于表格数据,目录类别也适合。 编辑但你还是要弄清楚你的PHP逻辑才能实现这个目标。 Derp就我而言。

或者,有Columnizer jQuery plugin自动执行技巧,但我不喜欢依赖javascript驱动的布局元素解决方案。虽然您只能通过Modernizr触发不支持CSS3方法的浏览器。仍然不是这个的忠实粉丝。

您可以发布您在其他浏览器中使用的CSS3吗?也许有一个可用的解决方法可以解决问题。对于最终结果的细节,我仍然有点模糊。我专注于你的问题的CSS方面而不是PHP。找到一个有效的CSS驱动解决方案显然比试图找出将类别划分为相应列的逻辑要容易得多。