dedecms中 channel 生成的li标签 第一个li加不同的样式
贴出一些css和channelartlist
css部分:
<style>
type{dede:fieldid/}{ color:#b96704; font-weight:bold; background:#fff}
#dis{dede:fieldreid/},#dis{dede:fieldid/}{ display: block}
on{dede:fieldreid/},on{dede:fieldid/}{ font-weight:bold; color:#000}
</style>
这部分一定要放到模板页面,不能使用link来加入
--------------------------------------------------------------------------------------
channelartlist 循环部分
<ul>
{dede:channelartlist }
<li class="tenint"><a href='{dede:field name='typeurl'/}' class=" on{dede:fieldid/}">{dede:field name='typename'/}</a></li>
<ul class='autod' id="dis{dede:fieldid/}">
{dede:sql sql='Select from dede_arctype where reid =~id~'}
<li><a href="/plus/listphptid=[field:id/]" class="type[field:id/]">[field:typename /]</a></li>
{/dede:sql}
</ul>
{/dede:channelartlist}
</ul>
--------------------------------------------------------------------------------------
这个就可以实现二级 甚至三级的当前效果
这个样式就可以控制了的 不需要修改程序
我贴一个我写的样式吧
#pagelist {
padding: 25px 0 20px;
}
ul, ol, li {
border: 0 none;
list-style: none outside none;
margin: 0;
padding: 0;
}
#pagelist li {
display: inline-block;
float: left;
margin-right: 10px;
}
#pagelist lithisclass {
background-color: #6DA0E9;
border: 1px solid #868686;
color: #FFFFFF;
font-weight: bold;
height: 23px;
line-height: 23px;
padding: 0 7px;
}
这个我是写的样式,至于字体颜色和背景嘛 你可以更具自己的需要换。
给你一个参考,这个也是用dedeCMS做的
http://newsimrubbercom/news/
<li [field:global name="autoindex" runphp='yes']@me = (@me==1 "class='first-teacher'" : ""); [/field:global]>
<img src="[field:litpic/]"/><a href=""><b>[field:title/]</b><i>[field:shorttitle/]</i></a></li>
{/dede:arclist}
通用样式,为第一条单独使用 first-teacher 样式
在CCS文件中不要使用织梦的标签,它不会解析的。
你可以在使用相对路径。比如:你的CSS文件在 style目录中,在 images目录中,那么,你的css文件中的地址可以写成
main { background:url("/images/IndexBggif") repeat-y; }
希望能帮到你!
这个我是用js的方法实现的。
1、左侧的列表正常调取
2、建立一个隐藏的div,里面的内容是当前栏目的标题
3、取到隐藏div的内容,去左侧栏目比对,相同则增加响应的class
效果蛮好,而且不用修改dede的代码,js组件很方便用。
有案例可看,如果需要可以私信我,这里发网址容易被屏蔽。
0条评论