一些CSS样式书写技巧

时间:2007-10-16 12:57:00 

在一行内声明CSS,对比下面两个:


h2 {font-size:18px; border:1px solid blue; color:#000; background-color:#FFF;}
h2 {
   font-size:18px;
   border:1px solid blue;
   color:#000;
   background-color:#FFF;
   }


第二种看起来的确格式化,但是不会在阅读上有任何帮助。写在一行内可以让你更快的找到需要的部分。

以前我也是写成类似第二种方式,但是逐渐发现就像文章说的一样,没多大用。一行看起来又爽快又省地方还能让文件更小。

分块书写代码

这样书写代码可以让CSS更页面化,在出现问题时候可以最短时间内找到问题所在。就像下面这样:

代码片段

#content {float:left;}
   #content p { … }
#sidebar {float:left;}
   #sidebar p { … }
#footer {clear:both;}
   #sidebar p { … }


浏览器支持

只支持最新的浏览器。也就是说要放弃IE5和IE5.5。这样一来就能省下很多时间。对于IE6来说不用使用盒模型Hack。如果只针对流行浏览器的话,只需要很少的Hack就能实现同样的效果。

我注意了一下网易新版主页的CSS,其中竟然一个!important或者Hack都没有,可是在FF和IE里面显示效果都很好。合理的使用CSS可以避免Hack。当然,调试的时间会多一些。

包含浮动元素

所有在容器内的内容都应该被设计为和容器保持一致。如果过大的话就会滑动到错误位置。使用负值margin调整到容器外同样会导致滑动。

理解Overflow

如果页面中有两个浮动元素,在左容器内输出过多内容的话就会导致右侧容器跑到下面。这也就是说你的margin、宽度或者padding设置混乱了,不过在FF里面体现不出来。使用overflow:hidden或者overflow:scroll可以避免IE允许内容冲出容器。

允许块元素自动填充空白

缩写CSS

很多人都margin-top、margin-right、margin-bottom、margin-left的用上一堆。其实这是最基本的,margin可以直接简写为margin:上 右 下 左值。可以在这里看到CSS缩写的总结。
避免不必要的选择器把样式的选择器减少到最少。如果你发现自己不停的写ul li {}或者table tr td{}就证明写的过于详细了。更少的选择器会让你更容易的发现问题。

我没有完全翻译,而且其中还有很多我自己的话,呵呵。

标签:css,技巧
0
投稿

猜你喜欢

  • Mysql安装注意事项、安装失败的五个原因分析

    2024-01-22 14:16:48
  • python标准库 datetime的astimezone设置时区遇到的坑及解决

    2022-05-01 23:54:56
  • 对TensorFlow的assign赋值用法详解

    2023-03-18 22:52:56
  • mysql 8.0.25 解压版安装配置方法图文教程

    2024-01-13 06:56:25
  • 解决pytorch读取自制数据集出现过的问题

    2023-04-23 15:15:43
  • ajax xmlhttp getResponseHeader实例教程

    2009-02-04 10:46:00
  • tensorflow中Dense函数的具体使用

    2021-04-26 17:01:49
  • Python使用贪婪算法解决问题

    2022-04-13 10:23:14
  • 从console.log说起(console.log详细介绍)

    2022-03-23 03:16:34
  • echarts学习之如何给饼图中间添加文字

    2024-05-03 11:10:30
  • 使用apidoc管理RESTful风格Flask项目接口文档方法

    2022-11-24 10:05:14
  • Python面向对象程序设计类的多态用法详解

    2021-05-28 20:21:29
  • go mod 使用私有gitlab群组的解决方案

    2024-05-22 10:29:28
  • JavaScript队列的应用实例详解【经典数据结构】

    2024-04-16 09:53:13
  • Python中__repr__和__str__区别详解

    2022-02-17 04:45:25
  • SQLSERVER2008中CTE的Split与CLR的性能比较

    2024-01-28 06:56:04
  • pyqt5 从本地选择图片 并显示在label上的实例

    2022-12-12 17:48:04
  • 在PYQT5中QscrollArea(滚动条)的使用方法

    2023-03-07 06:29:51
  • Python编程入门指南之函数

    2021-05-13 15:45:31
  • MySQL SQL语句优化的10条建议

    2024-01-19 23:41:28
  • asp之家 网络编程 m.aspxhome.com