<ul class="nav sidebar-menu">
<li {eq name="$url" value="index"}class="active"{/eq}>
<a href="{:url('/admin/index/index')}">
<i class="menu-icon glyphicon glyphicon-home"></i>
<span class="menu-text"> 后台首页 </span>
</a>
</li>
{volist name="nav" id="vo"}
<li>
<a href="#" class="menu-dropdown">
<i class="menu-icon fa {$vo.icon}"></i>
<span class="menu-text"> {$vo.title} </span>
<i class="menu-expand"></i>
</a>
<ul class="submenu">
{volist name="vo['children']" id="sub"}
<?php $sname=substr($sub['name'],0,strpos($sub['name'], '/')); ?>
<li {eq name="$url" value="$sname"}class="active"{/eq}>
<a href="/admin/{$sub.name}">
<span class="menu-text">{$sub.title}</span>
</a>
</li>
{/volist}
</ul>
</li>
{/volist}
</ul>
上面代码排列是标准的,但不知道为什么tp5循环出来的彻底乱了
变成了以下这样
<ul class="nav sidebar-menu">
<li >
<a href="/admin/index/index">
<i class="menu-icon glyphicon glyphicon-home"></i>
<span class="menu-text"> 后台首页 </span>
</a>
</li>
<li>
<a href="#" class="menu-dropdown">
<i class="menu-icon fa fa-dropbox"></i>
<span class="menu-text"> 产品 </span>
<i class="menu-expand"></i>
</a>
<ul class="submenu">
</ul>
</li>
<li>
<a href="#" class="menu-dropdown">
<i class="menu-icon fa fa-user"></i>
<span class="menu-text"> 管理员 </span>
<i class="menu-expand"></i>
</a>
<ul class="submenu">
<li >
<a href="/admin/user/lst">
<span class="menu-text">管理员列表</span>
</a>
</li>
<li class="active">
<a href="/admin/authrule/lst">
<span class="menu-text">权限列表</span>
</a>
</li>
<li >
<a href="/admin/authgroup/lst">
<span class="menu-text">用户组</span>
</a>
</li>
</ul>
</li>
<li>
<a href="#" class="menu-dropdown">
<i class="menu-icon fa fa-gear"></i>
<span class="menu-text"> 系统设置 </span>
<i class="menu-expand"></i>
</a>
<ul class="submenu">
<li >
<a href="/admin/conf/lst">
<span class="menu-text">配置列表</span>
</a>
</li>
<li >
<a href="/admin/conf/conf">
<span class="menu-text">配置项</span>
</a>
</li>
</ul>
</li>
</ul>
<li>和</ul>没有按照正确的缩进显示,虽然页面不影响,但查看源代码的时候就很杂乱了
首先,你这里写的是模板语言,tp后台是要进行进一步转换为php代码,然后执行,在转换php的过程中,生成的代码和你看到的代码完全不一样,可能多了很多,或者少了一些。空格什么的,有些被忽略,有些又多了一些空格换行啥的。
所以,给浏览器的代码就会变成你看到的样子,主要是空格和换行导致你看到的不一致。
最后说下,源代码不是给人看的,你编辑器里面的代码才是。再乱,浏览器认识就行,你可以看看一些网站,所有HTML代码都挤在一起,因为他们压缩过了。但也不影响,所以不要纠结这个。