一、ul标签在Mozilla中默认是有padding值的,而在IE中只有margin有值。
二、同一个的class选择符可以在一个文档中重复出现,而id选择符却只能出现一次。对一个标签同时使用class和id进行CSS定义,如果定义有重复,id选择符做的定义有效,是因为id的权重要比class大。
三、一个兼容性调整(IE和Mozilla)的笨办法:
初学可能会碰到这样一个情况:同样一个标签的属性在IE设置成A显示是正常的,而在Mozilla里必须要设成B才能正常显示,或者两个倒过来。
临时解决方法:选择符{属性名:B !important;属性名:A} 或许有时候并没有效果。
四、如果一组要嵌套的标签之间需要些间距的话,那就留给位于里面的标签的margin属性吧,而不要去定义位于外面的标签的padding
五、li标签前面的图标推荐使用background-image,而不是list-style-image。
六、IE分不清继承关系和父子关系的差别,全部都是继承关系。
七、在给你的标签疯狂加选择符的时候,别忘了在CSS里给选择符加上注释。等你以后修改你的CSS的时候就知道为什么要这么做了。另外提醒您,不要太疯狂了。
八、如果你给一个标签设置了一个深色调的背景图片和亮色调的文字效果。建议这个时候给你的标签再设置一个深色调的背景颜色。因为图片丢失了,也可以保持文字的可读性。
九、定义链接的四种状态要注意先后顺序: Link Visited Hover Active
十、与内容无关的图片请使用background。时刻记住表现与内容分离。
十一、定义颜色可以缩写#8899FF=#89F
十二、table在某些方面还是有用武之地的,在遇到内容为数据表格时,不要对它产生憎恨的心理。
十三、<script>没有language这个属性,应该写成这样:<script type=”text/javascript”>
十四、完美的单象素外框线表格(在IE5、IE6、IE7及FF1.0.4以上中均可通过测试)
table{ border-collapse:collapse; }
td{ border:#000 solid 1px; }
十五、margin取负值可以在标签使用绝对定位的时候起到相对定位的作用,在页面居中显示时,使用绝对定位的层不适合使用left:XXpx这个属性。把这个层放到一个要相对定位的标签旁,然后使用margin的负值是个好方法。
十六、绝对定位时使用margin值定位可以达到相对于本身所在位置的定位,这与top,left等属性相对与窗口边缘的定位不同。绝对定位的优势在于可以让其它元素忽略它的存在。
十七、如果文字过长,则将过长的部分变成省略号显示:IE5,FF无效,但可以隐藏,IE6有效
<DIV STYLE=”width:120px;height:50px;border:1px solid blue;overflow:hidden;text-overflow:ellipsis”>
<NOBR>就是比如有一行文字,很长,表格内一行显示不下.</NOBR>
十八、在IE中可能由于注释带来的文字重复问题时可以把注释改为:
<!–[if !IE]>Put your commentary in here…<![endif]–>
十九、如何用CSS调用外部字体
语法:
@font-face{font-family:name;src:url(url);sRules}
取值:
name:字体名称。任何可能的 font-family 属性的值
url(url):使用绝对或相对 url 地址指定OpenType字体文件
sRules:样式表定义
二十、如何让一个表单中的文本框中的文字垂直居中?
如果用行高与高度的组在FF中是没有效果的,办法就是定义上下补白就可以实现想想的效果了。
二十一、定义A标签要注意的小问题:
当我们定义a{color:red;}时,它代表了A的四种状态的样式,如果此时要定义一个鼠标放上的状态只要定义a:hover就可以了,其它三种状态就是A中所定义的样式。只定义了一个a:link时,一定要记得把其它三种状态定义出来!
二十二、并不是所有样式都要简写:
当样式表前定义了如p{padding:1px 2px 3px 4px}时,在后续工程中又增加了一个样式上补白5px,下补白6px。我们并不一定要写成p.style1{padding:5px 6px 3px 4px}。可以写成p.style1{padding-top:5px;padding-right:6px;},你可能会感觉这样写还不如原来那样好,但你想没想过,你的那种写法重复定义了样式,另外你可以不必去找原来的下补白与左补白的值是多少!如果以后前一个样式P变了话,你定义的p.style1的样式也要变。
二十三、网站越大,CSS样式越多,开始做前,请做好充分的准备和策划,包括命名规则。页面区块划分,内部样式分类等。
二十四、固定宽度汉字截断:overflow:hidden;text-overflow:ellipsis;white-space:nowrap;(不过只能处理文字在一行上的截断,不能处理多行。)(IE5以上)FF不能,它只隐藏。
CSS hack是指我们为了兼容各浏览器,而使用的特别的css定义技巧。这是国外摘来的一张CSS hack列表,显示了各浏览器对css hack的支持程度,对我们制作兼容网页非常有帮助。
查看:csshacks
YUI Compressor与TB Compressor
YUI Compressor是yahoo前端团队开发的一个前端代码压缩工具,功能很强大。需要Java运行环境,可以用java命令手动压缩CSS和JS文件,也可以用ant在编译的时候批量压缩。
淘宝前端团队的玉伯根据YUI compressor封装的Windows平台压缩工具,安装卸载都很简单。正如功能强大的YUI Compressor,TBCompressor不仅可以压缩CSS,也可以压缩JS。
在这里下载。了解更多关于TBCompressor – JS和CSS压缩工具
另外,推荐阅读屈超同学的《完善 TBCompressor 对 CSS 文件的压缩过程》。
web 2.0资源优化工具
国人用delphi 7开发的一款桌面工具,也是可以压缩CSS和JS。推荐一下。另外值得一提的是,作者放出了该项目的源代码。
查看官方介绍及下载。另外,貌似该工具的CSS压缩部分基于CSS Tidy。
mergeCSS
CSS森林站长鬼哥出品的一个基于AIR的工具,有很多很有用的功能,比如多文件合并、合并@import导入文件等。查看详细介绍。
需要注意的是,该工具对缩写和属性合并的支持并不太好,如果能够增加这些支持,可能会更好吧。
另外一个非常重要的事情是,到目前为止,鬼哥尚未放出该工具,如果你想尝试一下,可以联系他。
page speed
page speed其实是Google开发的一个基于Firebug的firefox插件,主要是用来分析网站前端性能的。但是在page speed的分析结果列表中Minify CSS选项,点开即可看到你的CSS可以压缩的比例,以及后面提供一个压缩过的版本,点击即可查看。唯一不足的就是不能自定义压缩。
GZIP
CSS压缩工具可以自动完成清理你的代码的大部分工作。它们中的很多会告诉你你的文件被压缩的百分比,所以请多尝试几个以了解哪个是最好的。
CSS Drive
- 压缩模式: 低、普通、高度压缩
- 注释压缩:不压缩、全部、或者长于某个特定值的。
CSS Compressor
- 重排属性
- 压缩色彩
- 压缩font-weight
- 小写化选择器
- 去除不必要的空间
- 去除不必要的分号
Arantius
- 去除注释
- 去除至少x字节长度的注释
- 每行一个规则
CSS Optimizer
可选项:
- 不删除断行(Yes 或 No)
- 可以处理URL、文件或粘贴的文本等方式的CSS
Lottery Post
Clean CSS
可选项(每个均可选Yes 或No ):
- 重排选择器
- 重排属性
- 优化选择器及其属性(0, 1 or 2)
- 合并简写属性
- 只有安全优化
- 压缩色彩
- 压缩Font-weight
- 小写化选择器
- 属性字体(小写或大写)
- 去除不必要的反斜杠
- 转换!important hack
- 移除最后一个分号”;”
- 节省注释
- 剔除无效属性(CSS2.1, CSS2.0 或CSS1.0)
- 输入为文件
事实上,这就是开源项目css tidy的演示网站。
CSS tidy中文版:http://www.csswebsite.cn/tools/csstidy/。
Pingates
- 转换长色彩名为16进制
- 转换长16进制代码为短16进制代码
- 转换长16进制代码为色彩名字
- 转换RGB为16进制
- 去除0度量
- 合并同一个规则
- 合并同一个选择器
- 合并属性
- 去除重复的属性
- 从margin和padding中去除无用的值
- 显示统计
- 以彩色格式输出
- 使用最小尺寸输出
PHP Insider
SevenForty
- 截断选项: 500, 1000, 1500 or 2000
该工具基于YUI压缩器,但是会自动将IE的hacks删除,开发者给出的解释是,IE hacks应该以单个文件出现,而不是杂糅在主CSS文件中,这样会变得难于维护。





















