您好,欢迎访问一九零五行业门户网

Pjblog模板制作教程 超强推荐_经验交流

2007.1.30更新……转载自 http://www.dnxh.cn/blog/article.asp?id=155
pjblog的用户群越来越大,一个blog就相当于一个blogger网上的家。而现在追求个性的时代,给自己的blog做过有个性的、符合自己特点的skin是大家的一个愿望。但这个毕竟涉及到一些知识,我们需要通过自己的努力学习来完成我们的愿望。我将从零说起,大概是这样的一个过程:准备工作→skin的构思→制图→切片→编写css→预览→调试兼容性→美化细节,预览和编写是个循环过程。我想通过本教程能够使大家了解skin制作,不需要再用别人做的skin,靠自己的努力把自己的blog装饰的漂亮有个性。很振奋吧,那我们往下看……
一、准备工作
1.1 必需的一些基础
你要有学习知识的欲望,这个是一切的前提。你对pjblog的使用有一定的了解(如果你还不知道skin是什么、怎么安装,建议你不要往下看)。在做skin的时候要细心,严格要求自己,有一定的审美观。最好熟悉一些制图软件(adobe potoshop、fireworks之类)。对css方面番茄做过很不错的教程(需要注册)。
2.2 涉及的工具
首先你要有太电脑,并且显示器的色彩不是很差(我的本本的液晶显示器让我哭笑不得呀……)。制图软件adobe potoshop、fireworks之类。css编写工具,你当然用记事本也可以写。色彩调配软件,屏幕截图软件。这些基本在本站都有下载,为了防止站点流量过大被k,我只能加了下载级别,并随机变换下载地址。请注册后下载,谢谢你的合作!
macromedia studio 8.0 官方简体中文正式版
电驴下载地址:http://lib.verycd.com/2005/10/14/0000069569.html
比较认同的网页制作类软件,这里我们主要是用套装里面的 fireworks(教程里面用的就是他)。当然你也可以用adobe potoshop。
css编写工具editplus v2.1.2 build 147 汉化版
下载地址:点击下载文件
当然有人说用dreamweaver不是更好?这里不建议用,手写更容易记住代码的含义,再说css可视化编写不是很理想。本来topstyle3是可视化编写css的最佳工具,但介于pjblog的css是分几个文件的用他效果也不怎么明显。
color schemer studio1.5配色工具
下载地址:点击下载文件
配色是你构思skin的第一步。这款工具对颜色的搭配比较专业。
苏昱式样表中文手册2.0(一下简称《手册》)
下载地址:点击下载文件
调试软件firefox
下载地址:点击下载文件
现在有94%的人在用ie,但firefox的用户也在不断的增长。firefox的好我在这里就不说了。但css在这两个浏览器之间肯定有兼容的问题。
截图工具hypersnap5
下载地址:点击下载文件
这个也是我用后认为功能比较强大的截屏软件。
如果你打瞌睡了[79]那就休息一下……
二、 构思你的skin
2.1配色
你的blog给人的第一印象就是视觉上的,所以说色很重要。
这里我们用的是白、灰、红。一般灰色是通用的,就像血型里的o型血一样。
2.2布局
页面的布局先不说太复杂的,你理解了结构后可以发挥自己的想象力。在这里要说的是css(cascading style sheets层叠样式表单)这里的重点就是层叠。如果说skin设计是平面设计,那我认为就错了。从欣赏的角度看这是个平面作品,但从设计的角度看那就是三维的。要不怎么有z-index这样的属性呢。再者我们可以这样做个比较,css是说的层类似于ps或fw里面的图层,不一样的地方仅仅在于:层交换顺序--ps可以而div+css不可以;alpha通道--ps可以而css不可以(一些浏览器可以)。图片的如上图所示,我们可以看到pjblog的结构和div的前后顺序,前面的覆盖后面的(当然也可以是透明的)。我们先不玩花哨的,blog的布局一般都就这样。
这里的header就是头部,里面包含blog名、副标题、横向菜单;
tbody是中部内容,里面包含着主内容(maincontent也就是我们写的日志,就像这个教程在的位置)、侧栏(sidebar);
foot是底部,里面包含我们的一些版权信息、备案什么的;
我们说了这么多都是说的pjblog的结构,也就是说是box和box之间的关系。而box是怎么组成的呢?这里已经有高人douglas做个个flash模型,里面很明白的说明了margin,background-color,background-image,padding ,border 以及他们之间的关系。
当然这些是pjblog的主体部分,每个部分里面还包含一些其他div,而这些细节(像横向菜单、侧栏内容面板、主内容模块等等)也是美化我们blog的要点,但这个我们慢慢来。先看主体这样先可以在你的脑海里有个skin的大概样子,为我们下面的制图做好充分的准备。
下面自己做了个pjblog的结构模型。
三、制图
3.1了解背景
为什么要特设一节说背景呢?因为在css里所用的图片都是以背景的形式存在的。在我们制图、切图的过程中始终不能忘记这点,要做到尽可能的减少图片的体积(现在好多简洁的skin都实现了不用图片或少用图片),为的是减少下载量,提高页面浏览的速度。
那我们来看看background :
他的属性包括了
background-color 颜色
background-image 图像
background-repeat 重复方式
background-attachment 是否滚动
background-position 位置
而我们制图的时候要注意的是那些呢?首先我们看color和image的关系,始终是color显示在下面image在上面。这个的作用就是某些大块单色的地方我们就不需要用image而是采用color;再个就是repeat,他可以让图片以x或y重复或不重复的方式显示。这个的作用就是某背景有这样的重复的我们切图的时候宽(长)只要切1px就可以了;我们要结合pjblog的结构对这些特性综合运用,要培养自己的3d思维。
3.2主体的制作
我们以我现在用的这款skin做例子,来简述制图过程。
我们先来看看我们想做的是怎样的一个主体(这个在你自己的脑海里应该已经成型,或有个模糊的构思)。
白色的主调两边带点阴影,侧边是灰色(#eeeeee)230px宽。
打开fireworks,新建一个1000px×768px的白色背景的文件(因为这款skin的主体背景是白色的)。确定我们的主体内容为800px宽,绘制一个宽度为800px,高度大于画布的矩形,再给加上1px宽的灰色(#999999)的边框。用滤镜发光给加点阴影,滤镜的参数设置成宽度为5,柔化为10,透明度为15,颜色为黑色,偏移为0。
再给加个侧栏绘制一个宽为230px,高度大于画布的矩形,放置到左边,注意不要压住1px的边框。这样我们的主体部分就绘制好了。制作主体部分我们要注意些什么呢。主要我们要考虑到页面的高度问题,因为页面的高度会随内容的不同而变化,那我们就要做一个有弹性的高度。我们可以利用background-repeat设置值为y。那我们的背景就是纵向重复了。
3.2头部的制作
同样我们先看一下我们要做个什么样的top。
我们看到的是两条带质感的半透明的横条压在主体上,
我们画两个矩形,宽度大于画布(因为我们要这两条自适应宽度)。通过调节渐变给矩形加点质感,调整透明度为80。
这样我们的top就做好了。
3.3底部的制作
底部的制作一般比较简单,这里为了对应top也加了个横条,这里就不做自适应宽度了(当然也是可以做的,我们从简单的做起)。下面是段灰色的矩形,上面压个横条。
到这里我们的图基本已经画了个大概了。你看了可能就一会儿,但有的时候我们从构思到成型可能需要几天。为了配合看效果最好加点内容里面。配合链接颜色看看,反复修改而达到最佳效果。
3.4切片
所谓切片,顾名思义就是把做好的图切成你需要的一块块。有很多朋友都是在这里卡住了,不知道怎么切好。这里要说的是在可以表现出你的效果的前提下,图切的越小越好、越少越好。那需要切那些呢?怎么切?其实是根据你css的需要来切的。你可以先跳过这个不看,在学习了css后你想在某个box里设置背景的时候,你就会想到图,那你就到做好的图里面切一块去用吧。慢慢的你就明白怎么切图了。下图就是头部背景图的切片,我们还可以看到切图用的是什么工具(我认为fireworks切图功能好点)。在fireworks里面切片是放在网页层里面的,我们可以给切片命名,想要这个切片的时候我们就可以导出图片。这里还要说的是导出图片的格式,就是优化栏的属性。个人比较喜欢png32格式,他支持alpha通道(未来的趋势)。要是不透明图片选jpg也很好(他体积小)。
整体的png分层文件提供给大家研究。点击下载此文件
我们打开这个文件可以看到。如头部、主体背景、底部他们的宽度不是我们刚开始的时候说的800px,那是因为我们在外面加了阴影。一定要把这个尺寸算进去(一般要求算,而不是看阴影和背景色差不大的时候容易搞错,要做到仔细)。而全局背景并不需要拉的很高,因为下面的白色我们完全可以用css做,大了就浪费了。还有就是按钮背景图,如果你是有鼠标接触式样的建议你不要分两张图,我们做在一张图上,通过css控制图片的位置来实现不同的背景,这个等说到css的时候再详细说。
四、编写代码
4.1全局式样
终于进入了核心部分,我们将用css+div美化我们的blog。有好多朋友总是问这样一个问题,我怎样做skin。我这里想说的是你先要了解css和div的关系。div就像房子的骨架(砖墙等等),而css就是室内外装潢,你不了解骨架是怎么构成的你怎么去装潢呢?还有要说的重要的一点是css的特点之一,后面定义的取代前面定义的。比如说我在全局式样里定义了字体颜色是红的,而在后面主体里面定义了颜色是蓝的,那我们看到的就是蓝的。
我们进入正题,先说全局式样(在pjblog里面是skin文件夹下面的global.css文件)。这里我们可以对整个页面的特定标签定义外观。特定标签比如body、img、select、th等等这些是内置标签。这里的式样对里面的内容和div有效。看代码(里面为css代码,看作是div布局,以后都是用这种可运行代码表示,不在重复)
[ctrl+a 全选 注:如需引入外部js需刷新才能执行]
通过预览我们可以看到一个背景式样了,那其他的说怎么没提现呢。那是没有内容在里面,你可以试着在
之间添加代码或文字看看。你也可以改变式样里的属性看看起了些什么变化(如果你不知道属性是什么,建议你看看上面的《苏昱式样表中文手册2.0》)。你可以把background-color:的属性改成#000看看,背景是不是成黑色的了。是不是感觉有点成就感呢(我当时就感觉到了 !)。千万不要拘束于这几个标签,你可以试着用更多标签和属性的组合来改变外观。这样你才有可能做出有个性的skin。
4.2主体式样
我们把全局式样看作是
的话,那就把主体式样看作是#container。说到这里我们可能有点明白了css的编写其实是一个细化的过程。为什么这么说呢?你看#container其实是包含在里的,而我们以后说的有都是包含在#container里的。
通过上面的模型可以看出,#container里包含了#header、#tbody、#foot通过这几个的定义我们就可以实现上面所画的图了。我们在上面的代码上继续添加,看代码
[ctrl+a 全选 注:如需引入外部js需刷新才能执行]
首先我们在
里添加了需要的
主体
       顶部
内容
底部
我们先从#container加起(为什么要加个#号,不明白的去看手册)。
#container{width:816px;宽度,应该和你切片的时候有所对应
             text-align:center;内容居中
             margin:0 auto;边框为零。这里要注意的是,要#container居中我们必须设置margin为auto而且父元素(body)为text- align:center;
                    background:url(skins/dnxh10/cont_bg.jpg) repeat-y;背景路径并以y方向重复。
                    height:600px;
}
现在预览一下看看,好像主体出来了。但顶部不是我们想象的那样呀!在#container上不是有三个元素吗,那我们再来定义一下#header和#foot就可以了。#tbody我们可以留空有更大的活动性。
html代码
[ctrl+a 全部选择 提示:你可先修改部分代码,再按运行]
看到了,哈哈。整个结构是不是好像成型了。这里我们定义了#header。
#header {
                 width:816px;宽度,这里也就是图片的宽度
                 height:110px;高度,这里也就是图片的高度
                 text-align:left;内容左对齐,因为我们以后里面的blog名字是要靠左的。
                 background:url(skins/dnxh10/top.jpg) no-repeat;背景路径,不重复
}
底部的定义也一样。就不在罗嗦了。
ps:这里的因为里面没内容,而设置的高度做演示用的。
4.3顶部式样
顶部的美化很重要,因为用户打开你的blog的时候首先进入眼帘的就是顶部。做顶部式样的时候你要知道顶部式样是在什么地方,他的结构是怎样的。顶部式样就是header和他里面的内容,结构我们可以通过上面的flash模型来了解。我们还是看代码:
html代码
酷秀网络 dnxh:电脑绣花、电脑协会、电脑笑话、呆脑小孩、等你喜欢……
首页 聚合器
[ctrl+a 全部选择 提示:你可先修改部分代码,再按运行]
不知道为什么这段不能加式样,可能是和页面的代码一样的缘故吧。那我们就不加,我们先来分析一下结构,看每个元素的作用是什么。我们先设置一下#header的式样,上面我们已经说过了。
  #container #header{width:816px;height:110px;background: url(top.jpg) no-repeat;text-align:left;}
#blogname就是我们的blog的名字,他包含了#blogtitle子元素。我们设置的时候先设置#blogname再设置#blogtitle。
  #container #header #blogname{font-size:22px;color:#999;font-weight:bold;float:left;padding:15px 0 0 25px;}
   #container #header #blogname #blogtitle{display:none}
在这里我们设置了#blogname的字体大小、颜色、粗体、和浮动左、补白的距离。而blogtitle设置了不显示。
再往下看,看到了#left和#right两个元素,看命名的意思我们就知道了。那是#header两头的式样,我们可以靠float:left和float:right来实现,在这个式样里我们不需要设置。这个主要可以实现圆角之类的#header。
#menu是菜单项,一般我们看这里的时候比较糊涂,再加上含有float属性,运用起来比较难以驾驱。我们来分析一下:
#menu是个整体式样。里面包含了一个的结构。关于项目列表,而li里面又有绑定了式样,分别是menul、menua、menudiv、menur分别的作用就是menul利用float:left;控制菜单左端的式样,menudiv控制菜单项目之间的式样也就是分隔符,而menur就是利用float:right;控制菜单右端的式样。
  #container #header #menu{float:right;margin:35px 15px 0 0}
  #container #header #menu ul{}
  #container #header #menu ul li{float:left;height:20px;list-style:none;}  
   .menul{}
   .menur{}  
   .menudiv{width:1px;height:20px;background:#999;margin-right:15px;margin-left:15px;}
li里面的float:left;是实现横向菜单的必要条件,list-style:none;是消除列表前的小圆点的。
仅仅就这些式样顶部还是不完美的。我们要设置菜单的链接式样。也就是我们刚才少一个没说的menua的式样。
.menua:link,.menua:visited{text-align:center;text-decoration:none;color:#cc3300;line-height:19px;height:15px;}  
.menua:hover{text-decoration:none;}
:visited是访问后的式样,:link是通常的式样,:hover是鼠标接触的式样,其实还有个:active(在鼠标点击与释放之间发生的事件时的样式)这里有个书写的顺序“love/hate”(爱/恨)链接规则:link, visited, hover, acitve。具体参数可以参照手册。
4.4内容式样
内容式样里包含的元素比较多,变换也比较多,我们看看到底要做的是那些式样。首先是内容#tbody,这个里面在首页的时候包含的是主内容#maincontent和工具条也就是侧栏#sidebar。而在登陆页的时候里面就是登陆框,注册页,还有信息提示出错,恭喜通过什么这些就是消息框式样#msgcontent。如果你看过以前的式样文件里的layout.css的你可能会发现一个问题,我上面说的这些标签都是带#号的也就是id选择符,而上面没有提及是.开头的是类选择符,也就是class=*。为什么会有这样的命名方式,我们知道pjblog是一个模块化的程序。我们可以自己自定义侧栏模块和内容模块,也就是说侧栏工具条里的若干个工具箱里的id(模块标识)是可以自己定义名字的,内容里的模块也是如此。这就为我们的模板创造了更多式样的可能。你可以这样理解,首先我们用了统一的类class,再个我们又给每个工具箱定义了唯一的一个id,那我们通过这两组合就可以定义每个工具箱的式样了。形式如下:
我们从侧栏开始,侧栏的结构很清晰。一个#sidebar主元素,里面包含了#sidebar-topimg、#innersidebar、#sidebar-bottomimg三个子元素,很明显#sidebar-topimg、#sidebar-bottomimg是侧栏的顶部和底部的式样,而#innersidebar里面是放工具箱.sidepanel的。工具箱.sidepanel又作为一个主元素,里面包含了.ptitle标题、.pcontent内容面板、.pfoot底部。看代码:
程序代码
代码里的aa、bb、cc就是我们自定义的模块标识。这个在后台模块设置里可以自己定义。
那我们把上面的代码定义一下式样看看效果,想要的效果就是每个功能块(aa、bb、cc)的头部(ptitle)有一个自己的式样(分别是:红、黄、蓝)。
html代码
[ctrl+a 全部选择 提示:你可先修改部分代码,再按运行]
.ptitle{height:10px}定义一下ptitle共有的式样属性;
#side_aa .ptitle{background:red}下面就分别定义不同的颜色。
#side_bb .ptitle{background:yellow}
#side_cc .ptitle{background:blue}
这里要注意的是pj侧栏模块的id命名规则:在模块标识前加side_。比如这里的aa,那就是#side_aa。而程序默认得模块标识是不可以更改的。
看到效果后你是不是已经感觉到了pjblog的模块功能的神奇了,我们还可以给个个模块给于绝对定位来实现各式各样的布局。比如eternal love的日历式样、yahoo weight的skins切换模块式样。我们这里同样说的是pj的构造和怎么运用这些构造,具体的css属性还是去参考手册。
这里我们着重要了解的是模块标识、选择符之间的关系。关于选择符手册里有更详细的说明。
然后我们看主内容的式样。主内容的式样比侧栏要复杂一点,首先主内容的标签是#innermaincontent,这也是一个三栏(或说成是多栏,因为可以添加自定义模块)的布局。包括了头部#maincontent-topimg、中栏#content_contentlist和底部#maincontent-bottomimg。我们可以分别定义他们的式样,头部和底部已经是最基层的div了,不含有子元素了,你可以尽情的定义他们的式样,不用考虑他里面还有什么式样,这句话的含义就是定义完后就是最终式样了。而#content_contentlist是程序的默认模块,是不可以删除的,在后台设置模块的最下面一个。如果你增加了内容模块,那增加的那些内容模块就像上面侧栏说到的一样,可以自由定义。这里也要注意的是:pj内容模块的id命名规则:比如内容模块标识是contentlist那这个模块的id就是#content_contentlist,要在内容模块标识前加content_,这个很重要
自定义模块因为具有不确定性,我在这里就不具体的说了,着重说说contentlist这个默认模块。这里面的内容和侧栏一样不再是用id选择符了,用的是类选择符。首先#content_contentlist包含了两栏,.pagecontent和.content,.pagecontent是分页式样,这也是最终定义的式样。具体的是那部分呢,我们看下图:
凡是这些地方都属于.pagecontent这个类的。这就是类选择符的优点。你可能觉得怎么说了半天的结构不说css呢,别急,了解结构很重要。忍着点往下看。
分页式样了解后我们再看.content的式样。.content里面的内容比较丰富。首先他是一个三栏的布局,头部.content-top、内容.content-body、底部.content-bottom。而头部和底部又分别挂了左右两div。头部的是.contentleft和.contentright,底部的是.contentbleft和.contentbright。我们从字面上就可以了解到这些分别是在那个位置了。如果你还不了解请去看模型。
在.content-top里面还包含着一些日志其他信息,就是日志的标题、作者、日期。那这些分别是在哪里呢?标题是属于.contenttitle一类,作者和日期包是属于.contentauthor一类。他们分别包含在和里面。
上面说道这些是在首页情况下的式样,在单篇日志的模式下有一点不一样。在下面多了个.content-info类,再里面又包含了infoauthor和infoother两个类。这里包含的信息如下图:
再下面就是正文了.content-body了。在单篇日志里因为【文章来自】【引用通告地址】【tags】等内容也赋予了.content-body这个类,为了和【文章来自】【引用通告地址】【tags】区别还给这个id加了#logpanel标签,在首页里是没有的。其实在首页里加个也可以,我在做yahoo weight这个式样的时候,内容首字母式样就在首页加了个#logpanel标签,可以单独控制日志内容和首页摘要的式样。
内容里除了这些式样外还有评论框式样.comment和信息框式样#msgcontent、ubb框.comment。
评论框式样.comment一般是在单篇日志内容里,他是一个两栏的布局。里面包含了.commenttop和.commentcontent两个类。
你往下拉了看看是不是这样的。
信息框式样#msgcontent。就是评论信息的下面,你发表评论的地方(当然还有登陆框、信息提示宽、注册等等要用到)。这个也不复杂,就一个头部#msghead和#msgbody,意思也很明了。而内容里面的ubb编辑器式样是另外一个文件控制,这就放到后面说。
到这里内容式样基本结束,下面我们主要看这节的部分代码。
内容块的结构会出现几种情况,首页状态、单篇日志、内容插件等模式。着重说前两种情况。
首页状态代码
html代码
内容头部
自定义模块gg
内容列表 1 | 2 | 3
预览模式: 普通 | 列表
内容块
标题1编号174 作者:×××; 日期:×××××
文章内容1
查看更多...
tags: blog
分类:技术文档 | 固定链接|评论: 0|引用: 0 | 查看次数: 42
内容块
标题2编号173 作者:×××; 日期:×××××
文章内容2
查看更多...
tags: blog
分类:技术文档 | 固定链接 |评论: 0| 引用: 0 | 查看次数: 42
内容底部
[ctrl+a 全部选择 提示:你可先修改部分代码,再按运行]
从上面的代码可以看到,我并不没有用多少式样,我只用了背景色和前景色来区别各个元素。看上去可能不是很漂亮,重要的是自己改。有些时候一个元素里没有内容,我们就不容易了解这个元素的存在。我一些模块里没有文字等内容的元素添加了文字说明。你可以试着把css代码删掉或改动,来进一步了解没个元素的作用。这里还有个小技巧,在首页普通模式下pjblog给每个日志摘要都给于了一个id,单独定义或批量定义式样,命名规则是log_+日志id号。我们从上面的代码可以看到日志173和174的不同的地方。那日志的id怎么知道?我们把鼠标挪到日志的链接那里,看到链接的最后有?id=***这样的,就是日志的id了。
单篇日志状态
单篇日志状态和首页有很大的不同。里面包括的内容有自定义模块、分类和上下篇(.pagecontent)、标题作者日期(.contenttitle.contentauthor)、自定义字体大小和日志等级天气情况(.content-info)、内容、评论分页(pagecontent)、评论(comment)、发表评论框(msgcontent)等等。
看代码
html代码
内容顶部
自定义模块adsense
订阅 | 上一篇 | 下一篇
it 、软件信息
文章标题 作者:**** 日期:****
字体大小: 小 中 大
文章内容
文章来自: 本站原创 引用通告地址: http://www.dnxh.cn/blog/trackback.asp?tbid=27 tags: google
评论: 112 | 引用: 0 | 查看次数: 2693
1 | 2
jim [2006-04-24 08:19 am]
评论1
seamcker [2006-04-22 08:02 pm]
评论2
dnxh [2006-04-22 03:48 pm]
评论3
1 | 2
发表评论
昵 称:
密 码: 游客发言不需要密码.
验证码:
内 容:
选 项: 禁止表情转换 禁止自动转换链接 禁止自动转换关键字
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号. 字数限制 1000 字 | ubb代码 开启 | [img]标签 关闭
内容底部
[ctrl+a 全部选择 提示:你可先修改部分代码,再按运行]
发表评论框(msgcontent)准备放到以后的章节里详细说明。内容通用部分大体就说完了,重要的是自己把上面的代码通过改动,细化来认识pjblog的结构和css各个属性的具体含义和产生的效果。
4.5底部式样
底部式样内容其实不是很多,可以说是非常的少。但这里为什么也要开一节说呢,这里要涉及一些教程的题外话。大家也不得不看一下,要不做的再好的skin也会被人bs的。
我们知道blog的底部包含着一些重要的信息。第一行开头就是很重要的版权信息,说明了pjblog的版权并含有官方的网址链接,后面是自己站点的名字,站点是有什么构架的(就是xhtml | css)。第二行是页面执行的时间和查询数据库的次数,再后面就是我们skin的一些信息了包含了skin名字作者的站点和email地址。第三行是站点的备案。
这里要着重说说版权。skin的一些信息就标明了这个skin是你做的(具体怎么弄,等后面的章节里会说到的),使用者可以通过这些信息和你联系反应一些问题,当然也是宣传你的好方法,也是鼓励大家做skin的好处。对于pjblog的版权信息我们要绝对的保护。我们也讨论过这个问题,说windows这么多盗版的但这些也保留了ms的版权,都知道windows是微软的产品。盗版可能是某些人穷,这我可以理解。但对于pjblog这样一个优秀的开源程序,要你一分钱了吗?你有必要把他的版权去掉吗?这样就会失去了基本的道德。所以我们无论是在做skin还是在使用pjblog都应该尊重作者。似乎叉的远了点。
言归正传,来简单的看一下底部式样。很简单,看代码:
html代码
powered by pjblog2 v2.5.0125 copyright 2005, 酷秀网络 xhtml | css
processed in 0.359375 second(s) , 5 queries , 素 design by dnxh 苏icp备05072353号
[ctrl+a 全部选择 提示:你可先修改部分代码,再按运行]
很清楚,一个foot标签的div和两个。通过前面的学习我想大家应该了解怎么做了。其实一般这个不需要我们设置,基本的字体大小什么的都默认已经定义了。但我们可以要在底部加一些图片之类的,利用padding、margin等属性控制文字的位置,文本的左对齐、右对齐等等。这里要了解的一点是对
的控制,程序里面用了两
字段,可能在设置边框或补白的时候出现分行的问题。
五、细节表现
5.1 pjblog默认模块
我们知道pjblog的很多功能是有模块构成的,而程序默认的模块我们在做skin的时候为了通用性也必须要注意定义的。
5.1.1 日历式样
同样我们要来了解它的结构。
日历它是一个侧栏模块。我们前面说了模块是包含在侧栏的sidepanel面板里的,然后给各自的模块一个唯一的id。在这里日历的id就是side_calenbar。那我们就可以对这class为sidepanel、id为side_calendar的div进行定义了。对于class、id 是怎样定义式样的我们前面也说了在这里再复习一下。前者是类选择符,表现形式为:.类属性。后者是id选择符,表现形式为:#id名称。以后就不再重复了。一般为了skin的统一协调是对sidepanel进行统一定义的,只有特殊式样的时候才定义这个id为side_calendar的div。当然这个div里面和其他侧栏面板一样同样有一个class为ptitle的h4标签、一个class为pcontent的内容div和一个class为pfoot的底部div。
日历的主要内容是在pcontent里的一个id为calendar_body的div。这里面一共保护了7行。一个id为calendar_top的div里面显示的就是xxxx年xx月和两个方向按钮,一个id为calendar_week的div里面显示的是星期, 还有5个都是id为calendar_day的div这里就是具体的日期了。
我们再来看看进一步的结构,充分的了解结构才能做好skin。
calendar_top:除了内容外还有id为leftb和rightb两个div,分别控制两个方向按钮。我们可以自定义按钮的图片
calendar_week:里面是一个
的结构其中第一个也就是星期天“日”外面套了一个程序默认定义了红色。我们通过导航的了解知道了这个结构要使它横向排列必须用float,要不见点必须用liststyle:none;
calendar_day:这里面的结构和calendar_week是一样的,不同的是li里面都包含超链接,对不同情况的日期做了不同的class。日期选中(.click)、今天(.today)、非本月日期(.otherday)、本日存在日志(.haved)、今天存在日志(.dayd)
那我们来看代码,日历的式样表在模板的typography.css里面。因为css有继承的特性,因此我们最好按照默认式样的顺序书写代码。
文本查看复制到剪贴板打印©
/*日历式样---对整个框架进行定义,这里定义的内容是会继承的下面的。也就是说如果下面的不另外声明就表现这里定义的内容*/    #calendar_body{margin:5px 10px 5px 0px;font-family:arial;line-height:120%}   /*顶部---对顶部定义式样,这里定义了一下文本居中*/    #calendar_body #calendar_top{padding:0px 2px 0px 2px;height:18px;text-align:center;font-weight:bold;}   /*按钮左---按钮图片(我这里用了颜色背景代替)*/    #calendar_body #calendar_top #leftb{background:#333;width:9px;height:16px;float:left;cursor:pointer;overflow:hidden;}
其它类似信息

推荐信息