欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

客齐集OEM的CSS解析与开发经验

程序员文章站 2023-12-20 18:50:46
客齐集oem的css解析 这个oem是客齐集推出来的,如果你有一个域名,那么你就可以定制自已的网站了。由于是要让站工自已定制,所以开放了html以及css、js等代码。但默...
客齐集oem的css解析
这个oem是客齐集推出来的,如果你有一个域名,那么你就可以定制自已的网站了。由于是要让站工自已定制,所以开放了html以及css、js等代码。但默认的css是css是不能改的。
在写这个css时,我尽量用最少的标签,这样很站对css不是很熟的站长也可以定制。另外布局时和写css时,总的思想的就是从大的到小,从小到细。
这个布局和css是一次写成的,没有更改过,所以有一些地主还是可以优化的,这样的代码也不是最优的。但是,这样的布局的css是可以让站长定义成各式各样的。一会我给大家看一些例子。
以下是这个css的解析,很合适于初学者看。
 程序代码
@charset "utf-8";
/*定义全局,在这定义了全局中的标签*/
 * {margin:0px;padding:0px;}
 /*
 在这里定义了全局的文字大小为12px,行高180%;这样的行高看起来眼睛不会太累。
 在这里,我把宋体放在了verdana字体的后边,是为了中页面中的数字和英文能以英文字体显示,这样会漂亮一些;有些人不加宋体,但这样会有问题的,最起码我的测试结果是这样的。
 另外,我加了背景色,是因为在某些操作系统下的某些浏览器中,如果要不加背景,那么他的背景就会是其它的色。
 我在这里还定义了整体文字色。没有用黑色是为了让眼睛舒服一些;
 最重要的一些为是加了textalign;这个是让body中的内容全是居中,与里边一个大的div块合用,就可以实在如果页面内容是定宽的,那么在ie和firefox等浏览器中内容总在网页的中间,主要是为了解决ie和firefox中的差别,这里把文字弄成居中,然后我们再在body中加一个大的div块,把这个div的块写成文字左对齐,
 */
 body{ font-size:12px; line-height:1.8; font-family:verdana, "宋体", arial,sans; text-align:center; background:#fff; color:#666;}
 /*
 这里定义了全局的文字链接样式,我用了简写的形式,样式是和客齐集主站是一样的
 */
 a:link,a:visited{color:#000099; text-decoration: underline;}
 a:hover,a:active{color:#000;text-decoration: none;background-color: #fed762;}
 /*
 由于布局中将会用到很多的ul和li,而ul和li本身的样式并不好看,所以在这里我们去除列表小点以及边距等
 */
 ul,li{ list-style:none;}
 /*
 这里定义图片的边模框为0,这里全局定义一下。后边有加边框的,另外再加,主要的思想还是从大到小。
 */
 img{ border:0;}  
 /*
 这个是就包在body里的最大也是最外边的一个div块,有了就可以控制整个网页内容的宽度了。与body合用,就可以实现自动居中了。定义整个网站的宽度和水平居中
 1、这里定义了文字全部为左对齐。
 2、用margin来实现在firefox中居中。
 3、用overflow是担心有些人定义的内容会太宽而影响了布局。所以缢出就自动隐藏了;
 */
 #wrapper{ text-align:left;margin:0 auto; width:1000px; overflow:hidden;}
 /*
 info这里又加了一个宽为百分百的div块,加他是为了让有些站长可以把布局定制成全屏的,右边定宽,左边自动适用而加的。并是解决一行两列的的前题基础。
 这里我加了float,是为了“以毒攻毒”就是用浮动来解决浮动。因为右边也要加浮动;
 */
 #info{ width:100%; float:left; }
 /*
 这里是导航条
 用boder来加上边的绿色
 */
 #nav{width:100%; text-align:center; border-top:5px solid #5db30a; background:#fafafa; line-height:2.2}
 /*
 这里用了绝对定位,因为一共有三个以上的页面要用这个,很有可能他会受其它内容的影响,所以就定义为绝对定位,这样基本上不会受到影响。
 bykijiji的图片位置
 */
 #bykijiji{position: absolute; margin-left:550px; margin-top:-20px;} 
 /*
 主体大块*/
 #main{text-align:left;margin:0 auto;}
 /*底部大块*/
 #footer{border-top:1px solid #cdcdcd; padding:10px 0; clear:both; text-align:center;margin:0 auto;}
 /*头部大块*/
 #header{  clear:both}
 /*
 这里定义了header区标题文字的大小。色彩等。主要是为了让站长直接加文字logo就可以了。
 标题*/
 #header h2{ font-size:35px; margin-top:0px; font-weight:bold; color:#404040}
 /*
 以下left和right是完成一行两列布局为。我在left外边加了一个info。是为什么让定制更灵活一些,可以实现页面适度自动适应。
 左边大块
 这里的left距右边305px,由于他外边有一个百分之百的div。所以,这样就给右边一列留下了305的宽度。就样left就可以自适应了。
 */
 #left{ margin-right:305px;color:#000; font-size:14px;}
 /*这个是left里边的一个最大的div。这个是为是解决不同版本浏览器对padding的解释和计算的方法的不同*/
 #leftbox{ padding:10px; font-size:14px;}
 /*右边大块
 由于他前边的info的宽已经是百分百了,而里边的left又给他留了一个305px的空子。所以让他距左边负的305px就正好和left挨上了。在这里写了300px,是和左边大块离开5px;这样看上去更舒服。
 这里我定义了宽是289px;再加上padding左右的各5px;是299px; 为了安全,我少写一个像素。
 */
 #right{  margin-left:-300px; float:left; width:289px; padding:5px;background:#f7f7f7; margin-top:24px;}
 /*
 这是搜索那一条,没有什么好说的。
 搜索那一条*/
 #search{ padding:0 0 10px 0; text-align:left}
 /*定义标题文字大小*/
 h1{ font-size:16px;}
 /*
 在这里,定议了
 公用的三个css,他们都是布局中常用的。分别为水平换行,左浮动和右浮动
 这样命名很简单,而且字符最短,这样论在css文件中,还是页面中,最能作到代码尽量少。
 */
 .c{clear:both; height:0px; overflow:hidden;}
 .l{ float:left;}
 .r{ float:right;}
 /*这里定义了一个文字大小,由于上边定义的很多都是12px;可能或一定会有部分地方要用小字的,所以提前写在这里。*/
 .f12{ font-size:12px;}
 /*这义small的文字大小。*/
 small{font-size:12px;color:#999;font-weight: normal; padding-left:5px;}
 .h_hr{ height:1px; overflow:hidden; margin:10px 5px; background:#cdcdcd;}
/*++++++++++++++++++++++++++++++++++++++++++++++++++
以上就是定义的全局。然后在下边又分别对首页,list页面,以及单个信息的页面作了单独的css;
可以看出,用了上边的基础,下边单个页面css写起就方便多了。而且只要很少的代码就可以了。可能首页的代码会多一些;
下边的这些就不一一说明了。很简单的东西。
*/ 
/*单个页面部分*/
 .imgbox{ text-align:center; width:200px;}
 .imgbox img{ border:4px solid #ccc; display:block; margin:0 auto; }
 .navbox{border-left:4px solid #f5f5f5; margin:5px 0 10px 0; padding-left:8px; }
/*list页面部分*/
 #listnav{ background:#f7f7f7; line-height:2.0; padding-left:10px; border-bottom:1px solid #d4d4d4;}
 .listbox{ color:#666;width:590px;font-size:12px;border-bottom: 1px dashed #ccc;}
 /*绿色的时间*/
 .listbox p{color: #008000;}
 /*大标题*/
 #leftbox h2{font-size:14px; margin-top:10px;}
 #leftbox span{ margin-left:10px;}
/*首页页面部分*/
 #h_center_l{ width:66%; border-left:1px solid #cdcdcd;border-right:1px solid #cdcdcd; float:left; margin-top:10px;}
 #h_center_lbox{width:49%; border-right:1px solid #cdcdcd; float:left;}
 #h_center_lboxb{width:50%;  float:right;}
 #h_center_r{width:33%; float:right;margin-top:10px;}
 #h_center_l h1,#h_center_r h1{ padding-left:5px; font-size:14px;}
 #h_center_l ul,#h_center_r ul{ padding-left:19px; font-size:12px;}
 #qcity{clear:both; margin-bottom:20px; margin-top:10px;}
 #qcity li{ display:inline; padding-left:10px;}
 #qcity h3{ font-size:14px; color:#000}
 #links { border-top: 1px solid #ccc; margin-top: 15px; }
/*广告块部分*/
#leftbottomad{ background:#ffffcc; margin-left:10px; display:none}
#pfm{padding:20px;  font-size:12px;}
/*css完*/
说一说我个人在写布局和css的一点感受吧!说明,只是个人的感受!
1、了解用户群,如果你的用户是白领都是学生。那么你没有必要去考虑ie5以下的版本。那样你会累死的。
2、一行三列或一行二列自动适应,这个例子就可以了,他在ie6,ie7,firefox等的效果都是一样的。没有必要有一堆代码去写一个自动适应。
3、布局最难的就是布表单了。表单中的元素太多了,很难控制,特别是要适应很多浏览器。这个是更难了。如果将来我遇到表单,如果不是非常简单的,那么我一定用表格,我想信,复杂的表单用表格去布局,代码一定会小于那个人家常说的div+css。而且有表格布这东西,维护特别的容易。
4、在css设计的时间,总的来说,是标签从大到小来定义,布局从大块到小块。标签不一定用到很多。
5、有些人认为不要给那些div或块加上什么id; 我认为,加id是正确的,如果id中有不同的标签,那么通过css来控制就在容易了。有时我们会认为一些同样的色彩应该写在一个class里。然后哪里用到那么我们就在哪里调,如果变色,一改这个class就全变了。但是,我想问,如果不全变呢,只变一块,你怎么办。还去改布局吗? 如果是这样,那么结构和表现分开又有什么意义呢。
6、我们布大局可能会很简单,就像盖房子,大的样子几天就起来。但细细装修就麻烦了,又苦又累。我们常常分为了一个像素,节省一行代码而浪费大量的时间在上边,我感觉时间还是要花的,但是要有一个度。
7、布局时,我们也许把布局和css都弄的很nb。但同事一时半会看不懂你为什么要这样写,这样多人开发就很难了。你写的东西可能只有你能改。这样就麻烦了。所以,我们一定非要布局写的很nb。适应用点表格也是可以节省代码的。而且都能看懂。

上一篇:

下一篇: