CSS特性的取值以及浏览器的对错误CSS特性值的容错处理

CSS特性的取值


CSS特性的取值总结起来可以大致分为2种:长度值和颜色值


1、长度值


长度值分类

名称

说明

<integer>

整数

包括负整数、0、正整数;如z-index属性的值必须为整数

<number>

实数

包括所有整数和小数;

<length>

长度值

<number>+单位(px/em/cm etc.)注意必须要有单位(但0时可有可无)

1、   相对长度单位

em:相对于作用到该元素上的font-size大小

px:相对于显示设备的像素单位

ex:相对于一个小写英文字母x的高度

2、   绝对长度单位

in:英寸=2.54cm

cm:厘米

mm:毫米

pt:点

pc:皮卡 = 12pt

<percentage>

百分比值

<number>+%, 相对于父元素的某个值(常常是width)


2、颜色值

十六进制

如:#F0FFFF, #f0b=#ff00bb

必须要有#号

关键词

如:red

注意不能有引号;

关键词列表是:aqua、 black、 blue、 fuchsia、 gray、 green、 lime、 maroon、 navy、 olive、 orange、 purple、 red、 silver、 teal、 white 和 yellow。

rgb( )

如rgb(255,0,0)或rgb(20%,30%,10%) 

对于超出有效范围的值,会被处理为可用范围内的值。

如:

em { color : rgb(300, 0, 0) }       /* 修剪为 rgb(255, 0, 0) */

em { color : rgb(255, -10, 0) }     /* 修剪为 rgb(255, 0, 0) */

em { color : rgb(110%, 0%, 0%) }    /* 修剪为 rgb(100%, 0%, 0%) */

用户环境中某些对象的颜色

 

 


 3、当<length>长度值缺少单位时,各浏览器的处理

不管是一般设置CSS属性,还是在DOM中设置长度类型的CSS属性缺少单位,所有浏览器的混杂模式均将缺少单位类型的长度类型 CSS 特性理解为以 "px"为单位。而所有浏览器的标准模式均将此认为是错误的 CSS 代码而忽略。

4、各浏览器对于计算后宽度和高度为含有小数的长度值时,其最终值会不一致

因为像素一定是整数,所以宽度和高度值若用百分比得到一个小数值时,需要转换为整数.

IE6 IE7 IE8 Firefox

百分比宽度实际使用值(即最终值) = 四舍五入(计算值)

Chrome Safari Opera

百分比宽度实际使用值(即最终值) = 取整 (计算值)

IE6 IE7 IE8(Quirk) Chrome Safari Opera

百分比宽度计算是基于其包含块 width 的实际使用值

Firefox IE8(S)

百分比宽度计算是基于其包含块 width 的计算值


解决办法:如果页面需要精确到像素级的话,建议为宽高属性指定整型值。




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值