在很多列表调用的时候都需要有隔行换色或者多行不同颜色,特别在全通式的首页轮展图的时候,要想实现轮展图背景随着图片的更换,超过三张或多张的时候,隔行换色已经不能解决问题了,在原来的隔行换色的基础上,进行小小的修改就可以实现这样的功能。

列表调用隔行换色

全通式首页轮展图背景色更换

照片墙形式

标签说明:

1 arclist 标签下使用 [field:global.autoindex/] 默认从1开始
2 channel 标签下使用 [field:global.autoindex/] 默认从0开始
3 channelartlist 标签下使用 {dede:global.itemindex/} 默认从1开始
4  
5 arclist 从0开始[field:global name=autoindex runphp="yes"]@me=@me-1;[/field:global]
6 channel 从1开始[field:global name=autoindex runphp="yes"]@me=@me+1;[/field:global][field:typename/]
7 channelartlist 从0开始{dede:global name=itemindex runphp='yes'}@me=@me-1;{/dede:global}
8  
9 channelartlist 标签下使用 {dede:global name='itemindex' runphp='yes'}@me;{/dede:global}

隔行换色(增加样式),list同arclist

01 <div>
02  <ul>
03   {dede:list pagesize='50'}
04   <li>
05    [field:global runphp='yes' name=autoindex]
06    $a="<div id='a'>";
07    $b="<div id='b'>";
08    if ((@me%2)==0) @me=$a;
09    else @me=$b;
10    [/field:global]
11   <span class="date">[[field:typelink/]][field:pubdatefunction="MyDate('Y-m-d',@me)"/]</span>
12   <a href="[field:arcurl /]">[field:title /]</a>
13  </li>
14  {/dede:list}
15 </ul>
16 </div>

如果运用channel弄隔行换色,需要自增从1开始,精简写法如下:

1 <div>
2   <ul>
3   {dede:channel row=6 typeid=''}
4   [field:global name=autoindex runphp="yes"]((@me+1) % 2 == 0)?@me="<li class=\"last\">":@me="<li>";[/field:global]
5    <h4 class="title">[field:title/]</h4>
6    </li>
7   {/dede:channel}
8  </ul>
9 </div>

隔3行(n行)换色(增加样式)精简写法,替换橙色字体部分

1 <div>
2   <ul>
3   {dede:arclist row=6 typeid=''}
4   [field:global name=autoindex runphp="yes"](@me % 3 == 0)?@me="<li class=\"last\">":@me="<li>";[/field:global]
5    <h4 class="title">[field:title/]</h4>
6    </li>
7   {/dede:arclist}
8  </ul>
9 </div>

多行随意换色(增加样式)

01 <div>
02     <ul>
03      {dede:arclist typeid='8' row='6' orderby='weight'}
04      [field:global runphp='yes' name=autoindex]
05       $a="<li class='gd1'>";
06       $b="<li class='gd2'>";
07       $c="<li class='gd3'>";
08       $d="<li class='gd4'>";
09       $e="<li class='gd5'>";
10       $f="<li class='gd6'>";
11       if ((@me/1)==1) @me=$a;     <!--调用的<li>次数(第一次调用)能被1整除,则该<li>对应$a的class='gd_1'-->
12       else if ((@me/2)==1) @me=$b;<!--调用的<li>次数(第二次调用)能被2整除,则该<li>对应$b的class='gd_2'-->
13       else if ((@me/3)==1) @me=$c;<!--调用的<li>次数(第三次调用)能被3整除,则该<li>对应$c的class='gd_3'-->
14       else if ((@me/4)==1) @me=$d;<!--调用的<li>次数(第四次调用)能被4整除,则该<li>对应$d的class='gd_4'-->
15       else if ((@me/5)==1) @me=$e;<!--调用的<li>次数(第五次调用)能被5整除,则该<li>对应$e的class='gd_5'-->
16       else if ((@me/6)==1) @me=$f;<!--调用的<li>次数(第六次调用)能被6整除,则该<li>对应$f的class='gd_6'-->
17      [/field:global]
18       <div class="gdbox">
19        <a href="[field:arcurl/]"><img src="[field:litpic/]" width=""height="" alt='[field:title function='html2text(@me)/][field:spacename/]' /></a>
20        <p><a href='[field:arcurl/]'>[field:title/]</a></p>
21       </div>
22      </li>
23      {/dede:arclist}
24     </ul>
25 </div>

精简写法

1 <div>
2   <ul>
3   {dede:arclist row=6 typeid=''}
4    <li class="gd_"[field:global.autoindex]>
5    <h4 class="title">[field:title/]</h4>
6    </li>
7   {/dede:arclist}
8  </ul>
9 </div>

公共css样式部分

这里注意每张图的在调用的时候width和height可以为空,如果是或者乱填都没关系,靠样式进行定义。

01 <style type="text/css">
02 .gd1{width:750px;height:330px}
03 .gd2{width:370px;height:165px}
04 .gd3{width:185px;height:165px}
05 .gd4{width:185px;height:165px}
06 .gd5{width:335px;height:247px}
07 .gd6{width:335px;height:247px}
08 .gd1 img{width:750px;height:330px}
09 .gd2 img{width:370px;height:165px}
10 .gd3 img{width:185px;height:165px}
11 .gd4 img{width:186px;height:165px}
12 .gd5 img{width:335px;height:247px}
13 .gd6 img{width:335px;height:247px}
14 </style>




AiteCms,企业模板快速建站专家,点击了解更多

转载自织梦模板教程(www.dede58.com

DedeCMS列表页隔行/多行随意换色的更多相关文章

  1. dedecms列表页如何让文章列表里面的文章每隔五篇就隔开一段空间

    dedecms列表页如何让文章列表里面的文章每隔五篇就隔开一段空间,运用js控制列表样式的方法. 代码如下: <script type="text/javascript"&g ...

  2. dedecms列表页调用子栏目列表,织梦首页调用栏目的子栏目标签代码

    dedecms列表页调用子栏目列表,织梦首页调用栏目的子栏目标签代码. dedecms列表页调用子栏目列表标签: {dede:channelartlist type='sun' }<a href ...

  3. dedecms列表页如何调用栏目关键词和描述

    问:dedecms列表页如何调用栏目关键词和描述 答:有人问起dedecms列表页如何调用栏目关键词和描述.解答如下: 自己实验了下总结方法如下:(以下方法使用于栏目封面和列表和内容页,其他的地方没有 ...

  4. Dedecms列表页标签list/pagelist使用方法及pagelist的样式

    Dede的默认页面中有个list_article.htm页面,这是dede的列表页面.在列表页显示文章的列表,是通过dede的list和pagelist这两个个标签实现的.本文就这两个标签的使用及pa ...

  5. dedecms列表页使用noflag

    最近小编使用dedecms遇到列表页需要使用noflag,在网上找了一圈都是直接替换代码,试用了一下并不能解决问题. 以下是小编自己根据资料整理的...多说一句由于各个编辑器打开的方式可能代码不在这一 ...

  6. dedecms列表页有图调用缩略图无图留空的方法

    默认情况下,织梦的文章列表页会调用出当前栏目下的文章列表,并且调用出每个文章的缩略图:如果文章本身就有图,会调用出一张小图,如果没有,则会显示默认的织梦图片.这种处理方式有时候比较影响美观,其实可以修 ...

  7. DedeCMS 列表页调用图集内容多张图片的方法

    新做一个以图片为主的网站,采用的DEDECMS图集,列表页要求直接调内容面的大图,解决方法如下:(主要是采用php的正则匹配函数preg_match_all函数来巩固复习下该函数:preg_match ...

  8. 织梦dedecms列表页dede:pagelist分页问题

    pagelist是dede定义的一个分页标签.有时直接引用这个标签的时候,会出现分页标签变形问题.我在使用非默认模板的时候就遇到过两次. pagelist本身就有一些样式是在include/arc.l ...

  9. dedecms列表页文章有图调用缩略图 无图留空或自定义图片的方法!

    默认情况下,织梦的文章列表页会调用出当前栏目下的文章列表,并且调用出每个文章的缩略图:如果文章本身就有图,会调用出一张小图,如果没有,则会显示默认的织梦图片.这种处理方式有时候比较影响美观,其实可以修 ...

随机推荐

  1. Log4j-----Log4j使用指南

  2. a+=b 等价于 a=a+b ?

    a += b和a = a + b全然等价么(java)?可能非常多人以为是一样的,事实上并不是等价的,以下看一下证据吧. public class Test { public static void ...

  3. Codeforces Round #249 (Div. 2) (模拟)

    C. Cardiogram time limit per test 1 second memory limit per test 256 megabytes input standard input ...

  4. RISC设计原则及基本技术

    CISC的特点: 指令系统庞大,指令功能复杂,指令寻址方式多,指令格式多 绝大多数指令须要多个机器周期完毕 各种指令都能够訪问存储器 採用微程序控制 有专用寄存器,少量 难以用优化编译技术生成高效的目 ...

  5. Vim 删除不包含指定字符串的行及统计匹配个数

    Vim 删除不包含指定字符串的行及统计匹配个数 转载▼     Help :g/pattern/d 是找到pattern, 删之 :v/pattern/d 是找到非pattern, 删之 :%s/xx ...

  6. BZOJ 1001 平面图与对偶图的转化 最短路Or最大流

    思路: 1.按照题意求最小割 转换成最大流用Dinic解 2. 转换成对偶图 求最短路 Dinic: //By SiriusRen #include <queue> #include &l ...

  7. LLDB使用篇(上)

    LLDB是个开源的内置于XCode的具有REPL(read-eval-print-loop)特征的Debugger,其可以安装C++或者Python插件. 本系列针对于已经知道何为debugger,且 ...

  8. 运营商 WLAN

    运营商 WLAN 运营商 WLAN 是 Android 9 中引入的一项功能,该功能可让设备自动连接到运营商实现的 WLAN 网络.在高度拥塞或信号覆盖范围较小的区域(如体育场或地铁站),运营商 WL ...

  9. DAG-背包九解-01背包

    饭卡:   电子科大本部食堂的饭卡有一种很诡异的设计,即在购买之前判断余额.如果购买一个商品之前,卡上的剩余金额大于或等于5元,就一定可以购买成功(即使购买后卡上余额为负),否则无法购买(即使金额足够 ...

  10. Nginx的编译与安装

    nginx.org 下载最新版本[选择 stable 稳定版]. 安装步骤: 1.cd /usr/local/src/ 2.wget http://nginx.org/download/nginx-1 ...