我的Opencart中有以下类别结构
<ul>
<li class="bu">
<a href="http://brandoutlet.lv/index.php?route=product/category&path=205" class="active">PARENT 1</a>
<ul>
<li>
<a href="/index.php?route=product/category&path=205_66"> CHILD 1</a>
<ul>
<li><a href="index.php?route=product/category&path=205_66_230"> - GRANDCHILD 1</a></li>
<li><a href="/index.php?route=product/category&path=205_66_229"> - GRANDCHILD 2</a></li>
<li><a href="/index.php?route=product/category&path=205_66_228"> - GRANDCHILD 3</a></li>
</ul>
</li>
<li>
<a href="/index.php?route=product/category&path=205_67" class="active"> CHILD 2</a>
<ul>
<li><a href="/index.php?route=product/category&path=205_67_231"> - GRANDCHILD 1</a></li>
<li><a href="/index.php?route=product/category&path=205_67_217"> - GRANDCHILD 2</a></li>
<li><a href="/index.php?route=product/category&path=205_67_216"> - GRANDCHILD 3</a></li>
<li><a href="/index.php?route=product/category&path=205_67_215"> - GRANDCHILD 4</a></li>
</ul>
</li>
</ul>
</li>
<li class="bu">
<a href="/index.php?route=product/category&path=206"> PARENT 2</a>
//....ETC
如何给父母,儿童和孙子赋予不同的造型(颜色,重量,装饰)?
我试图让它与JS一起搜索UL并根据位置应用类,但结果是混乱和不正确的。
有什么想法吗?谢谢!
视图文件:
<ul>
<?php foreach ($categories as $category) { ?>
<?php if($category['children']) { ?>
<li class="bu">
<?php } else { ?>
<li class="onit" >
<?php } ?>
<?php if ($category['category_id'] == $category_id) { ?>
<a href="<?php echo $category['href']; ?>" class="active" ><?php echo $category['name']; ?></a>
<?php } else { ?>
<a href="<?php echo $category['href']; ?>"><?php echo $category['name']; ?></a>
<?php } ?>
<?php if ($category['children']) { ?>
<ul>
<?php foreach ($category['children'] as $child) { ?>
<li class="onit" >
<?php if ($child['category_id'] == $child_id) { ?>
<a href="<?php echo $child['href']; ?>" class="active"> <?php echo $child['name']; ?></a>
<?php } else { ?>
<a href="<?php echo $child['href']; ?>"> <?php echo $child['name']; ?></a>
<?php } ?>
</li>
<?php } ?>
</ul>
<?php } ?>
</li>
<?php } ?>
</ul>
答案 0 :(得分:0)
您可以搜索并修改生成此表单的php文件。比完成一些css类的代码。
回答编辑过的问题:
如果您观察href,您可以看到路径部分在同一代中具有相同数量的变量:
您可以获得文本的这一部分,并根据变量编号进行格式化。所以条件看起来像这样:
if(count(explode("_",strstr($child['href'],"path=")))==1)
//Do the formating for parent.
与父母比较1,与孩子比较2,与孙子比较3 无论如何,我认为通过重写代码应该有更好的方法来实现这个目标。
答案 1 :(得分:0)
我想你可以这样做:
ul li {
color:red;
}
ul li > ul li {
color:blue;
}
ul li > ul li > ul li {
color:green;
}