===========================================
教程目录
一楼:
一、关于论坛中某些字的颜色简单调整方法
二、关于贴内个人信息颜色调整
二楼:
三、修改导航栏用户名字的颜色
四、版主两字及名字颜色
五、附件颜色修改
六、贴内个人信息和内容区背景颜色
三楼:
尾部Footer颜色详解
四楼:
导航条菜单颜色详解
===========================================
常看到大家提出关于局部修改字的颜色或背景颜色,我感觉还是做一个汇总贴,将大家比较集中关心的问题汇总并给出方法,力争经常更新了!
一、关于论坛中某些字的颜色简单调整方法:
在论坛中显示汉字代码常常通过默认模板文件夹下templates.lang.php文件调用获得。在DZ代码中往往以{lang XXXXXXXX}形式表示,XXXXXXXX可以在templates.lang.php中查到对应的汉字,如{lang forum_moderators} ,查templates.lang.php文件得'forum_moderators' => '版主',现在想将“版主”两字颜色显示为红色,则可以修改'forum_moderators' => '版主'为'forum_moderators' =>'<font style="color:red"> 版主</font>' 或为'forum_moderators' =>‘<font style="color:#ff0000"> 版主</font> ’ 。以此类推,以这种方式可以修改很多汉字显示问题!只要是css中能表达的,在此均能实现,如加粗(font-weight: bold)、下划线(text-decoration: underline)等,每个之间用“;”分隔。
注意:templates.lang.php中汉字有的相同的有好几个,用处不一样,到底哪个是你需要修改的呢,应该以相应英文代码为准,就是lang后面的英文。
二、关于贴内个人信息颜色调整
在我的论坛上做了加粗和颜色演示。地址:www.asocc.cn
在5.5的时候是可以在viewthread.htm中调整的,6.0之后就不能这样子做了,而是通过函数调用获得!现介绍rym1020的方法。原文见[原创]贴内个人信息颜色修改 ,
经过使用此法适用于DZ6.1。
具体是在include\cache.func.php找- if(is_array($data['customauthorinfo'])) {
- foreach($data['customauthorinfo'] as $key => $value) {
- if(array_key_exists($key, $authorinfoitems)) {
- if(substr($key, 0, 10) == 'extcredits') {
- $v = addcslashes('<dt>'.$authorinfoitems[$key][0].'</dt><dd>'.$authorinfoitems[$key][1].' </dd>', '"');
- } elseif(substr($key, 0, 6) == 'field_') {
- $v = addcslashes('<dt>'.$authorinfoitems[$key][0].'</dt><dd>'.$authorinfoitems[$key][1].' </dd>', '"');
- } elseif($key == 'gender') {
- $v = '".('.$authorinfoitems['gender'].' == 1 ? "'.addcslashes('<dt>'.$language['authorinfoitems_'.$key].'</dt><dd>'.$language['authorinfoitems_gender_male'].' </dd>', '"').'" : ('.$authorinfoitems['gender'].' == 2 ? "'.addcslashes('<dt>'.$language['authorinfoitems_'.$key].'</dt><dd>'.$language['authorinfoitems_gender_female'].' </dd>', '"').'" : ""))."';
- } elseif($key == 'location') {
- $v = '".('.$authorinfoitems[$key].' ? "'.addcslashes('<dt>'.$language['authorinfoitems_'.$key].'</dt><dd>'.$authorinfoitems[$key].' </dd>', '"').'" : "")."';
- } else {
- $v = addcslashes('<dt>'.$language['authorinfoitems_'.$key].'</dt><dd>'.$authorinfoitems[$key].' </dd>', '"');
- }
- if(isset($value['left'])) {
- $customauthorinfo[1][] = $v;
- }
- if(isset($value['menu'])) {
- $customauthorinfo[2][] = $v;
- }
- if(isset($value['special'])) {
- $customauthorinfo[3][] = $v;
- }
- }
- }
- }
复制代码 改为- $dispformat = array(
- 'uid' => '<dt style="color:blue">$name</dt><dd style="color:blue">$value</dd>',
- 'posts' => '<dt>$name</dt><dd>$value</dd>',
- 'digest' => '<dt>$name</dt><dd>$value</dd>',
- 'credits' => '<dt style="color:red">$name</dt><dd style="color:red">$value</dd>',
- 'extcredits1' => '<dt>$name</dt><dd>$value</dd>',
- 'extcredits2' => '<dt>$name</dt><dd>$value</dd>',
- 'extcredits3' => '<dt>$name</dt><dd>$value</dd>',
- 'extcredits4' => '<dt>$name</dt><dd>$value</dd>',
- 'extcredits5' => '<dt>$name</dt><dd>$value</dd>',
- 'extcredits6' => '<dt style="color:red">$name</dt><dd style="color:red">$value</dd>',
- 'extcredits7' => '<dt>$name</dt><dd>$value</dd>',
- 'extcredits8' => '<dt>$name</dt><dd>$value</dd>',
- 'readperm' => '<dt>$name</dt><dd>$value</dd>',
- 'field_1' => '".("$value"?"<dt>$name</dt><dd>$value</dd>":"")."',
- 'field_2' => '".("$value"?"<dt>$name</dt><dd>$value</dd>":"")."',
- 'field_3' => '".("$value"?"<dt>$name</dt><dd>$value</dd>":"")."',
- 'gender' => '<dt>$name</dt><dd>$value</dd>',
- 'location' => '".("$value"?"<dt>$name</dt><dd>$value</dd>":"")."',
- 'oltime' => '<dt>$name</dt><dd>$value</dd>',
- 'regtime' => '<dt>$name</dt><dd>$value</dd>',
- 'lastdate' => '<dt>$name</dt><dd>$value</dd>',
- );
- foreach($dispformat as $key => $format) {
- if(array_key_exists($key, $authorinfoitems)) {
- if(substr($key, 0, 10) == 'extcredits'||substr($key, 0, 6) == 'field_') {
- $name = $authorinfoitems[$key][0];
- $value = $authorinfoitems[$key][1];
- } elseif($key == 'gender') {
- $name = addslashes($language['authorinfoitems_'.$key]);
- $value = '".('.$authorinfoitems['gender'].' == 1 ? "'.addslashes($language['authorinfoitems_gender_male']).'" : ('.$authorinfoitems['gender'].' == 2 ? "'.addslashes($language['authorinfoitems_gender_female']).'" : "'.addslashes($language['secret']).'"))."';
- } elseif($key == 'location') {
- $name = addslashes($language['authorinfoitems_'.$key]);
- $value = $authorinfoitems[$key];
- } else {
- $name = addslashes($language['authorinfoitems_'.$key]);
- $value = addslashes($authorinfoitems[$key]);
- }
- eval('\$v = "'.addslashes($format).'";');
- if(isset($data['customauthorinfo'][$key]['left'])) $customauthorinfo[1][] = $v;
- if(isset($data['customauthorinfo'][$key]['menu'])) $customauthorinfo[2][] = $v;
- if(isset($data['customauthorinfo'][$key]['special'])) $customauthorinfo[3][] = $v;
- }
- }
复制代码
补充:经yyyooo提出,精华右边的数字是链接属性,为此上面之法不能凑效,为此补充单独修改一法:在css_append.htm尾部增加- .postauthor dl.profile a{ color:#f00; }
复制代码
说明一下:
1、代码表达含义:
'uid' => UID
'posts' => 帖子
'digest' => 精华
'credits' => 积分'
'extcredits1'- 'extcredits8' 看你后台如何定义的了,如威望等
'readperm' => 阅读权限
'field_1' - 'field_3' =>为用户扩展资料项,不一定有啊
'gender' => 性别
'location' =>来自哪儿
'oltime' => 在线时间
'regtime' => 注册时间
'lastdate' => 上次登录时间
2、举例:如在后台设置威望是第一个扩展积分,则修改
'extcredits1' => '<dt>$name</dt><dd>$value</dd>',
要改威望二字的颜色,则把风格代码加在dt后面,如果改威望数字颜色,则加在dd后面。
例如“威望”是红色,数字是蓝色。则为:
'extcredits1' => '<dt style=\"color:red\">$name</dt><dd style=\"color:blue\">$value</dd>', 也可以用#ff0000和#0000ff
3、扩展使用:将字、数字可以加粗(font-weight:bold)、变斜(font-style:italic)、加大(font-size:16px)等操作。
例如“威望”是红色、加粗,数字是蓝色、变斜、16px字号。则为:
'extcredits1' => '<dt style=\"color:red;font-weight:bold\">$name</dt><dd style=\"color:blue;font-style:italic;font-size:16px\">$value</dd>'
[ 本帖最后由 sonocc 于 2008-10-7 06:45 编辑 ] |