首先,我承认这个标题有剽窃某知名站点之大号的嫌疑,不过对于现在的网页制作来说,却是一句大实话。不管是以前用 table 还是现在用 DIV+CSS,搞不定定位,基本上就是空谈。

关于定位,前提是要有一个良好的CSS书写习惯。看了不少别人的代码和一些教程之后自己也有了不少的领悟。最基本的,我觉得对于那种唯一的或者是整体布局方面的div用id比用class要好,因为id是一次性的,且比较醒目,而class可以反复使用,适合作为文字排版等重复劳动。

昨天突然灵感乍现,做了现在的首页——源代码随便观赏,只是可能有些过短,对于部分人来说可能会有些刺眼。在定位问题上,我用了从《CSS Mastery》启发来的小技巧——将用作基准的图片(我的首页里就是中间的那个名片)放进某#字头类的background里面,然后写上

position: relative;

接着再将相对于基准定位的图片(首页名片右边的小标签)放入另一个#字头类的background,写上

position: absolute;

然后记得在写 HTML 的时候将后一个嵌套进前一个里面,这样后一个图片就会相对于前一个图片的位置进行绝对定位了。我折腾了不到一个下午,结果如下

首页

在Fx、IE6、IE7里面测试都合格,几乎是一次成功。

定位除了基本的居中对齐、浮动对齐,其实对于一些需要特别效果的页面,position 的效果会出其不意——因为position 相对/绝对定位的图片上与其他元素没有其他瓜葛,做部分修改的时候可以不会对整体布局伤筋动骨,是居家旅行、杀人灭口,常备良药。