CSS精粹之布局技巧

26次阅读

 1. 若有疑问立即检测

在出错时若能对原始代码做简单检测可以省去很多头痛问题。W3C 对于 XHTML 与 CSS 都有检测工具可用,请见 http://validator.w3.org  请注意,在文件开头的错误,可能因为不当的结构等因素造成更多错误;我们建议先修正一些最明显的错误之后重新检测,这样也许会让错误数量爆减。

2. 使用浮动功能时记得适当清除指令  
浮动是个危险的功能,未必会产生您所期望的结果。如果您遇到浮动元素延伸到外围容器的边框或者其他不正常情况,请先确定您的做法是正确的。请参阅 Eric Meyer 在 Complex Spiral Consulting Web 网站上的教学。

3. 边界重合时利用 padding 或 border 来避免
您可能会为了一点不应该出现的空间而焦头烂额,或者您需要一点点空间时,怎样都挤不出来。如果您有用到 margin,那么很容易产生边界的重合;Andy Budd 在他的网站上解释了可能的做法。

4. 尝试避免同时对元素指定 padding/border 以及高度或宽度
Windows 版 IE 经常导致 width 与 height 的计算问题。有些方法可以解决此问题,但如果母元素需要指定高度与宽度时,最好能够在母元素之内的子元素套用 margin, 或者当子元素需要指定高度与宽度时,在母元素套用 padding 以达效果。

5. 不要依赖 min-width/min-height
Windows 版 IE 并不支援两种语法。但是在某种程度下,windows 版 IE 可以达到相当于 min-width/min-height 的效果,所以只要对 IE 做点过滤功能,即可达到您想要的结果。

6. 若有疑问,先减少百分比
有时候某些错误会使 50%+50% 成为 100.1%,使网页出现问题。这时请尝试将这些值改为 49%,甚至 49.9%

7. 记住 “TRouBLed” 写法
Border,margin 与 padding 的简写语法有特定顺序,从上方开始顺时针方向转动:top,right,bottom,left. 所以 margin:0 1px 3px 5px; 的结果是上方无边界,右边 1 像素,以此类推。记住 “TRouBLe”,您就不会弄错次序了。

8. 只要不是零的值,都要指定单位
CSS 需要您对每个 font,Margin 等各种值指定单位。(唯一的例外是 line-height)  

正文完