html常用结构主要涵盖了四个css样式,日常的常用的一些结构及布局,及对form表单元素的一个总结。
这篇文章应该是我最近几年实践的凝炼吧,主要目的是把平时的一些可以重复的50%以上的工作整理规划下,然后运用zencoding及自动完成,进一步提高代码质量及效率。当然这些不能解决所有问题,需求的变态大家都懂的哈哈,然后这些其实都是比较基础简单的东西,切图的人都明白的,不过话说回来,简单归简单,但是要做好还是得费点时间的。总的说来,这个常用结构可以一个人用,也可以在一个团队推广使用,因为在构建的时候就想表达一个清晰明了及多人协作的结构。
下面扯点与这个结构相关的一些东西吧。
话说我这搭框架都搭了一年了,从一个项目到另一个项目,每次感觉这个项目做完了就不用再搭了吧,但是好像想的比较乐观哈哈,其实本来我的计划是好好学习下js的,没想到就被粘到上面了。当然说好听点就是搭框架吧,说不好听点就是页面仔吧哈哈。因为是从做drupal themer转来的,所以一开始搭建框架借鉴了很多drupal的东西,而且用的最多的居然是id,所以那个时候我的框架缺点是显而易见的,幸亏那个时候我负责搭的只是一个大方面的布局变化考虑,没有深入到要复用的一些区块。然后就是一个人切页面,一般页面量都在十个以上,最悲催的是有些直接就是切内容部分,其他的如导航啊左右边栏啊是不能动的,明知道不合理,只能照着来,一方面要尽量多的使用前人的样式,另一方面还要小心翼翼的,生怕自己定义的样式把前人写的其他的页面给干掉了,那就完蛋了。所以那段时间是很纠结的,也是很需要精力的,记得如果旁边有个同事大声说句话,都能把我吓一跳。这样大概过了四五个月吧,这期间除了切页面外然后编写了css解决方案系列文章,对css知识进行一个总结吧,当然由于精力有限,也遗漏了很多。第一个阶段的搭框架阶段就是这样,以总体布局为主,然后更多的其实是自己一个人的工作,不必考虑合作,几乎是怎么方便自己怎么来的。
然后接下来是第二次大规模的合作了,这次包括所有的布局变化及所有的公用部分,因为时间比较紧,我先搭布局的然后其他同事相继就在我的布局上进行具体页面构建,而公用部分的东西每次都是我建好了,然后在群里发个通知,说可以用了,然后他们再来读我的代码,去复用。然后比较悲催的是,除了本身页面变化外,后续还添加了好几个页面,那些不是公用的部分,到了后续的页面部分居然可以变成公用了。但是之前使用的class的名字 根本就没有表达出来这个公用的意思,而后台已经嵌套了先前的页面,时间又紧,这个纠结啊,到最后有心也无力了,计划赶不上变化快啊,泪牛满面!再来规划已是不可能,只能眼睁睁的看着那些臃肿的代码,那时候真想抽产品几记耳光哈哈。这么一来这次规划框架以失败告终。时间总是那么紧,这个战场还没有搞定,下个就来了,下下个也来了哈哈。
话说这次之后,又继续折腾了两三次,也积淀了现在这些常用结构的雏形,然后就促使我写这些一看class名字,就大概知道这些是什么个结构的东西,因为绝大多数页面其实转来转去,内容区块还是差不多,大不了就是修饰不一样罢了(当然专题页面除外)。然后先大量的看页面,抽出其中本质上可以共有的结构,同时考虑其灵活变通的扩展,然后对这些结构进行简单的class化,达到通俗易懂这个目的。在完成这些之后,想着要记住这些是比较费劲的,每次来复制吧,那些简单的还如自己写的速度快呢,于是想到了自动完成,所以可以想象当时我的自动完成定义了多少html代码片段,然后在实际项目中发现其实这些结构一般是要修改点东西的,但是现在整个html代码片段修改起来还是比较麻烦,于是思路一转,就先把这些自动完成定义成zencoding的模式,然后根据实际项目修改zencoding就灵活多了。至此这个html常用结构就完成了。所以如果你要用这个常用结构,zencoding和自动完成那是必备的,当然也有人会说自动完成可以不要,因为zencoding就可以做到啊,其实我也想过,但是zencoding毕竟不是自己的东西,升级也不是自己说的算,要是人家升级一次,你就屁颠屁颠的改一次,那得多郁闷啊!我不能控制zencoding,但是我完全可以控制我自己的自动完成。
时间是把杀猪刀!回顾这一年也做了几件比较有意义的事:先是写了css解决方案,然后加入w3cplus和大漠一起决心改版w3cplus并一起努力让其发展得更好,期间顺便研究了drupal 7主题,之后就是加入drupalct团队,并开发了一个符合中国特色的d7基主题,最后赶在世界末日之前完成了html常用框架。当然期间也有几件我想办好却泡汤的事:css3go,css精品教程汇集。最后发现,依靠群众的力量有点不太靠谱,活还得自己干。