vBulletin的使用心得--两则版面方面的改良
程序员文章站
2024-01-08 19:36:10
...
《表格的细线框》
其实,vBulletin留下了HTML规格的表格外围细线框的痕迹,也在全部的表格内预留了“接口”——严格来说,这与PHP、或数据库是无关的,因为这是网页设计的事。但缺省的情况下,这些细线框的HTML代码被注释了,不会显示,而且也不是所有模板都有。严格来说,加入细线框的过程不算是HACK,所以就没有以HACK的形式与大家分享。
虽然看上去这些细线框会令一部分人觉得好看,但要加工,也不是一件轻松事,特别是那些已经建立好自己的模板的人,他们不得不对20多个模板进行修改,要改动的地方不多,但很费事。
基本上,vBulletin的缺省模板的表格都有一个特征,如:“
”,这些表格的 cellspacing(单元格空隙)均为 1,而且每个单元格都按规律有特定的底色,这就保证了只要在外面套一个指定底色的单元格(表格),就可以让这个表格有一个1像素宽的细线框。而 cellpadding(单元格内空白)均为 4、border(边框)均为 1,则分别保证文字与表格有一定空隙,和不会显示笨拙的HTML缺省边框线。
所以,我们只要在这些表格的外面围上一个有指定底色的表格,就可以得到一个细线框的效果。为了令这个细线框的颜色也可以设置,我建议使用“替换变量”这个vBulletin的功能。例如在原有表格前面加入“
”,后面加入“
”;然后在控制面板->替换变量->新增,加入一个 {tablebordercolor} 的变量,值为 #000000 。这样就可以增加一个黑色的细线框。
需要修改的模板有很多,全部为
editpost,editprofile,editthread,forumdisplay,forumhome,getinfo,getip,lostpw,
memnerlist,memberlistsearch,modifyprofile,move,newreply,newthread,
openclosethread,postpreview,searchintro,searchresults,sendtofriend,
settopthread(HACKed),showfav(HACKed),showthread,standarderror
有几点要注意:
⒈postbit 最好不要加工,因为这些细线框会重叠,导致不美观;
⒉部分有两个或以上的地方需要加工,如 memberlist、newreply、和 showthread ;
⒊如果模板有表单(FORM),最好围在表格外面,但无论怎么样,都要保持嵌套正确;
有一点建议:如果你还没有安装vBulletin系统的话,最好在 installtemplate 里面改,但要注意 " 、$ 、 都需要加 。如果你已经安装了,那么就麻烦些,因为你还得改掉现有的系统上的模板。看有没有这个需要了——我就不想改。
范例:http://www.charmaine.f2s.com/
《光标位置》
当我们发言或回复时,都要用鼠标拖动滚动条,然后单击输入的位置,令光标停留在那里,以便开始输入文字。有没有方法可以让光标自动停留在相应位置呢?
有!
我们可以利用JavaScript对象的方法focus()来实现。加工几个对应的模板(主要是editpost,editthread,newreply,newthread),在最后加入“
”,其中 表单 是
其实,vBulletin留下了HTML规格的表格外围细线框的痕迹,也在全部的表格内预留了“接口”——严格来说,这与PHP、或数据库是无关的,因为这是网页设计的事。但缺省的情况下,这些细线框的HTML代码被注释了,不会显示,而且也不是所有模板都有。严格来说,加入细线框的过程不算是HACK,所以就没有以HACK的形式与大家分享。
虽然看上去这些细线框会令一部分人觉得好看,但要加工,也不是一件轻松事,特别是那些已经建立好自己的模板的人,他们不得不对20多个模板进行修改,要改动的地方不多,但很费事。
基本上,vBulletin的缺省模板的表格都有一个特征,如:“
”,这些表格的 cellspacing(单元格空隙)均为 1,而且每个单元格都按规律有特定的底色,这就保证了只要在外面套一个指定底色的单元格(表格),就可以让这个表格有一个1像素宽的细线框。而 cellpadding(单元格内空白)均为 4、border(边框)均为 1,则分别保证文字与表格有一定空隙,和不会显示笨拙的HTML缺省边框线。
所以,我们只要在这些表格的外面围上一个有指定底色的表格,就可以得到一个细线框的效果。为了令这个细线框的颜色也可以设置,我建议使用“替换变量”这个vBulletin的功能。例如在原有表格前面加入“
”,后面加入“
”;然后在控制面板->替换变量->新增,加入一个 {tablebordercolor} 的变量,值为 #000000 。这样就可以增加一个黑色的细线框。
需要修改的模板有很多,全部为
editpost,editprofile,editthread,forumdisplay,forumhome,getinfo,getip,lostpw,
memnerlist,memberlistsearch,modifyprofile,move,newreply,newthread,
openclosethread,postpreview,searchintro,searchresults,sendtofriend,
settopthread(HACKed),showfav(HACKed),showthread,standarderror
有几点要注意:
⒈postbit 最好不要加工,因为这些细线框会重叠,导致不美观;
⒉部分有两个或以上的地方需要加工,如 memberlist、newreply、和 showthread ;
⒊如果模板有表单(FORM),最好围在表格外面,但无论怎么样,都要保持嵌套正确;
有一点建议:如果你还没有安装vBulletin系统的话,最好在 installtemplate 里面改,但要注意 " 、$ 、 都需要加 。如果你已经安装了,那么就麻烦些,因为你还得改掉现有的系统上的模板。看有没有这个需要了——我就不想改。
范例:http://www.charmaine.f2s.com/
《光标位置》
当我们发言或回复时,都要用鼠标拖动滚动条,然后单击输入的位置,令光标停留在那里,以便开始输入文字。有没有方法可以让光标自动停留在相应位置呢?
有!
我们可以利用JavaScript对象的方法focus()来实现。加工几个对应的模板(主要是editpost,editthread,newreply,newthread),在最后加入“
”,其中 表单 是