2013年初次接触PHP网站快速开发(1):关于css表格td凌乱的原因探讨及分析

注:1、下文作者自称死水 ; 2、此文为死水亲身经历,皆为自身看法或意见,其中或有错误或有精华,请诸猿人类以平常心来看她们,指点错误或汲取精华,切勿激动而降低自身素质,死水不胜谢焉 ;  3、诸位若有喜欢可以转载,但请注明出处---这还是素质问题 ;  4、所谓志同道合,如有兴趣,可以多加交流。

正文:

  作为一名即将毕业的普通大学学生,在大学四年里自认为十分的刻苦认真,C小程序,java项目,HTML,css,js,.net控件,ps设计,DW应用等基本上都能熟练使用,但是在实习过程中,由于之前没有接触过php网站快速开发的信息,so 在最近几周内经常会出现一些奇葩的问题,前所未闻,闻所未有。但经过大量的花费时间及尽力调整心情的情况下,终于把她们搞定了,在这样的过程中,感谢业内孜孜不倦帮助我的猿人类,鲁西西,傻妞等。

  为了让大家引以为戒,死水就琢磨着什么时候发到网上博客里,一来给我的博客人生加点料,二来好让业内人士 遇到像我这种奇葩的问题的是偶不至于手忙脚乱,查也不知道怎么查(如果谁知道下面这个问题怎么搜索,麻烦还请回复我,不胜感激)。

  好了,言归正传,直接上问题:

  问题背景---本系统是一个培训系统网站,功能也不是太复杂,关键在于头儿要求让用PHP+Apache+MySQL快速搭建环境并开发,但是由于之前从没做过关于php嵌入网站,所以一切从头开始,上网找资料下载服务器,要求快速开发---好,使用ESSamp或者WampServer集成PHP+Apache+MySQL框架,直接在其上编写代码,用DWcs6开发,又找了ThinkPHP框架,嵌入代码等等。

  现在要解决的是在表格零乱的情况下,如图,去修正。此问题有以下几个难点:1、不知道怎么去网上搜索;2、不知道哪出现了问题(死水19号下班时无问题,20号上班就出现本文问题,虽然是两个人调用一个服务器编写,但是都说没有改动。死水表示很苦恼,很奇葩);3、有最开始的代码,但是还原之后就变成各种凌乱,还不如20号的页面;

  号,说这么多,直接上图看问题,实际想要显示应该是这样子的格式

这是Chrome或IE8、9下,错误显示
这是IE6下,错误的显示

  终于,经傻妞(网上认识的)指点审查元素发现,td属性里有浮动属性,

但是,问题又出来了(称问题a),在改css文件里并无该属性,
.tbl_course{ /*width:960px;*/
	 line-height:28px; border-top:1px solid #b9cde5;
	 border-left:1px solid #b9cde5;border-right:1px solid #b9cde5;
	 background-color:#FFF;
	 width: 100%;
	  }
.tbl_course th
{	border-bottom:1px solid #b9cde5;border-right:1px solid #b9cde5;
	font-weight:bold; /*background-color:#D8EAFA;*/
	background-color:rgb(0,49,92);
	color:white;
	text-align: center;
	}
.tbl_course td{	
	border-bottom:1px solid #b9cde5;border-right:1px solid #b9cde5;
	padding-left:2px;padding-top:2px;font-size:13px; 
	background-color:#FFF;
	text-align: center;
	}
.tbl_course td a{
	float: left;  padding-left: 10px;
	}

  

经仔细观察,问题b接着诞生了,该table的css属性完全不符审查元素所显示的,于是这更奇葩了,问题就像滚雪球一样越来越大...
死水无奈啊,只能从头开始看,看嵌入的代码
 1 <table cellspacing=\"0\" class=\"tbl_course\" style=\"width: 760px\">\r\n\t<tr>\r\n\t\t<th class=\"dd2\">考试名称</th>\r\n\t\t<!-- <th class=\"dd2\">类型</th> -->\r\n\t\t<th class=\"dd2\">考试时间</th>\r\n\t\t<th class=\"dd2\">状态</th>\r\n\t\t<th class=\"dd2\">已考次数</th>\r\n\t\t<th class=\"dd2\">最后一次答题时间</th>\r\n\r\n\t\t<!-- <th class=\"dd4\" style=\"width: 60px;\">操作</th> -->\r\n\t</tr>\n\t";
 2         foreach ( $datalist as $v )
 3         {
 4                 $attempt_times = Exercise::get_exam_user_attempts( $v['id'], $user_id );
 5                 echo "\t<tr>\r\n\t\t<td class=\"dd2\"  >
 6 <a\r\n\t\t\thref=\"quiz_intro.php?exerciseId=";
 7                 echo $v['id'].( $v['type'] == 2 ? "&cidReq=".$v['cc'] : "" );
 8                 echo "\"\r\n\t\t\ttitle=\"进入考试\" >";
 9                 echo $v['title'];
10                 echo "</a></td>\r\n\r\n\t\t
11                 <!-- <td class=\"dd2\" style=\"text-align: center;\">\r\n\t\t";
12                 if ( $v['type'] == 1 )
13                 {
14                         echo "常规网络考试";
15                 }
16                 if ( $v['type'] == 2 )
17                 {
18                         echo "课程毕业考试";
19                 }
20                 echo "\t\t</td> -->\r\n\r\n\t\t<td class=\"dd4\" style=\"text-align: center;\">";
21                 echo substr( $v['available_start_date'], 0, 16 );
22                 echo "\t\t至 ";
23                 echo substr( $v['available_end_date'], 0, 16 );
24                 echo "</td>\r\n\r\n\t\t<td class=\"dd2\" style=\"text-align: center;\">\n\t\t";
25                 echo 0 < $attempt_times ? "已完成" : "未开始";
26                 echo "\t\t</td>\r\n\t\t<td class=\"dd2\" style=\"text-align: center;\">";
27                 echo $attempt_times ? $attempt_times : "";
28                 echo "</td>\r\n\t\t<td class=\"dd2\" style=\"text-align: center;\">";
29                 echo substr( $v['last_attempt_date'], 0, 16 );
30                 echo "</td>\r\n\t\t<!-- <td class=\"dd4\" style=\"text-align: center;\"><a\r\n\t\t\thref=\"quiz_intro.php?exerciseId=";
31                 echo $v['id'].( $v['type'] == 2 ? "&cidReq=".$v['cc'] : "" );
32                 echo "\"\r\n\t\t\ttitle=\"进入考试\"><img src=\"";
33                 echo api_get_path( WEB_IMG_PATH );
34                 echo "starblue.jpg\" /></a></td> -->\r\n\t</tr>\n\t";
35         }
36         echo "</table>

仔细检查之后,没有发现问题,找不到td属性里float:left,然后只好琢磨:既然是td属性有问题,而又找不到属性在哪里,干脆直接重写一个,保存一个试一试,

奇迹似乎没有降临到死水身上,只有部分正常IE6浏览器实现正常,Chrome和IE8还是不正常,或许死水就是一谭$死水吧,没法子,在要失败的时候,看到谷歌浏览器的刷新按钮
,清理缓存,硬性加载,于是乎---成功了,调试正常!
 
 
Summary:
1、小公司里一定要做好自身备份,加强抗风险能力,不至于花费大量时间,去做一些重复功;
2、公用服务器问题,多人合作使用服务器代码,很痛苦,尤其是刚开始合作的时候;
3、不知道如何搜索的问题,这个另死水也比较痛苦,其实在写文章题目的时候,我也不知道该怎么写才能表述清楚;
4、失败不可怕,可怕的是失败之后停滞不前。
posted @ 2013-04-22 15:17  梦里笑花  阅读(170)  评论(0编辑  收藏  举报