CSS兼容性详解

对于前端工程师来说,不想面对又不得不面对的一个问题就是兼容性。在几年之前,处理兼容性,一般地就是处理IE低版本浏览器的兼容性。而近几年,随着移动端的发展,工程师也需要注意手机兼容性了。本文将详细介绍CSS兼容性

盒模型属性

【宽高width/height】

(全兼容)
width
height

(IE6-不支持)
min-width
max-width
min-height
max-height

【内边距padding】

padding

【边框border】

(全兼容)
border
border-width
border-color
border-style

(IE8-不支持)
border-radius


(IE10-不支持)
border-image
border-image-source
border-image-slice
border-image-width
border-image-outset
border-image-repeat


(只有firefox支持,需要添加-moz-前缀)
border-colors

【外边距margin】

(全兼容)
margin

(IE不支持,且需要添加webkit或moz前缀)
margin-start
margin-end


(只有chrome和safari支持,且需要添加webkit前缀)
-webkit-margin-before
-webkit-margin-after

【轮廓outline】

(IE7-不支持)
outline
outline-width
outline-color
outline-style

(IE不支持)
outline-offset

【box-sizing】

注意:只有firefox支持padding-box属性值

(IE7-不支持)
box-sizing
 

布局类属性

【display】

注意:IE7-浏览器不支持table类属性值

(全兼容)
display

【浮动】

(全兼容)
float
clear

【定位】

注意:IE6-不支持固定定位position:fixed

(全兼容)
position
left
right
top
bottom
z-index

【溢出相关】

(全兼容)
overflow
overflow-x
overflow-y
clip
visibility

(IE不支持)
resize

【flex】

(IE9-不支持)
flex-direction
flex-wrap
flex-flow
justify-content
align-items
align-content
align-self
flex-basis
flex-grow
flex-shrink
flex
order

【多列布局】

(IE10+和chrome浏览器支持标准写法,firefox、safari浏览器及移动端android、IOS需要添加前缀)
column-width
column-count
column-gap
column-rule
column-span(firefox不支持该属性)
columns

(只有firefox支持带前缀的column-fill属性)
column-fill

【grid】

(IE9-不支持,IE10+需要添加-ms-前缀,android4.4.4-不支持,IOS10.2-不支持)
grid-template-rows
grid-template-columns
grid-template-areas
grid-column-gap
grid-row-gap
grid-gap
grid-row-start
grid-row-end
grid-row
grid-column-start
grid-column-end
grid-column
grid-area
grid-auto-flow
grid-auto-rows
grid-auto-columns
justify-items
justify-self
align-items
align-self

文本类属性

【字体font】

(全兼容)
font
font-family
font-size
font-style
font-variant
font-weight
line-height
@font-face

【首行缩进text-indent】

(全兼容)
text-indent

【对齐】

注意:IE7-浏览器中vertical-align的百分比值不支持小数行高


(全兼容)
text-align
vertical-align

(safari浏览器、IOS、androis4.4-浏览器不支持)
text-align-last

【间隔】

(全兼容)
word-spacing
letter-spacing

【大小写text-transform】

(全兼容)
text-transform

【划线text-decoration】

(全兼容)
text-decoration

【空白符white-space】

注意:IE7-浏览器不支持pre-line和pre-wrap这两个属性值

(全兼容)
white-space

【换行】

注意1:W3C建议使用overflow-wrap替换word-wrap

注意2:移动端目前基本都不支持word-break的属性值keep-all

(全兼容)
word-wrap
word-break

(IE不支持)
overflow-wrap

【文本方向】

(全兼容)
direction
unicode-bidi

(safari和移动端IOS和android需要添加-webkit-前缀;IE浏览器只支持自己的私有属性值)
writing-mode

【文本溢出text-overflow】

(全兼容)
text-overflow

【文本阴影text-shadow】

(IE9-不支持)
text-shadow
 

修饰类属性

【背景background】


(全兼容)
background
background-color
background-image
background-repeat
background-position

(IE8-不支持)
background-attachment
background-clip
background-size

【前景和透明度】


(全兼容)
color

(IE8-不支持)
opacity

【颜色模式】

注意:IE7-不支持color:transparent,但支持background-color: transparent和border-color: transparent

(全兼容)
命名颜色
16进制
RGB

(IE8-不支持)
currentColor
RGBA
HSL
HSLA

【光标cursor】

注意:IE7-不支持拓展样式


(全兼容)
cursor

【过渡transition】


(IE9-不支持,safari3.1-6、IOS3.2-6.1、android2.1-4.3需要添加-webkit-前缀)
transition-property
transition-duration
transiton-timing-function
transition-delay
transition

【变形transform】

(IE9-不支持,safari3.1-8、android2.1-4.4.4、IOS3.2-8.4都需要添加前缀)
transform
transform-origin
transform-style
perspective
perspective-origin
backface-visibility

【渐变gradient】

  IE9-不支持,safari4-5、IOS3.2-4.3、android2.1-3只支持线性渐变,且需要添加-webkit-;safari5.1-6、IOS5.1-6.1、android4-4.3支持线性和径向渐变,且需要添加-webkit-

【动画animation】


(IE9-不支持;safari4-8、IOS3.2-8.4、android2.1-4.4.4需要添加-webkit-前缀)
animation
animation-name
animation-duration
animation-timing-function
animation-delay
animation-iteration-count
animation-direction
animation-play-state
animation-fill-mode

【混合模式】


(IE浏览器、android4.4-不支持,safari和IOS需要添加-webkit-前缀)
mix-blend-mode
background-blend-mode
isolation

【滤镜filter】

(IE浏览器及android4.3-浏览器不支持,android4.4+需要添加-webkit-前缀)
filter

【倒影box-reflect】

  只有chrome和safari浏览器支持,且需要添加-webkit-前缀

【will-change】

(IE13+、chrome49+、safari9.1+、IOS9.3+、Android52+)
will-change
 

其他类属性

【表格】

(全兼容)
border-collapse
table-layout
caption-side

(IE7-不支持)
border-spacing
empty-cells

【分页】

(全兼容)
page-break-after
page-break-before
page-break-inside

(IE7-不支持)
orphans


(IE及手机端不支持)
windows

【选择器】

(全兼容)
通配选择器   *
元素选择器   div
类选择器     .box
ID选择器     #box
后代选择器   div a
分组选择器   h1,p

(IE6-不支持)
属性选择器    h1[class]
子元素选择器  ul > li
相邻兄弟选择器 div + p


(IE7-不支持)
通用兄弟选择器 div ~ p

【伪类】

(全兼容)
:link
:visited

(IE6-不支持给<a>以外的其他元素设置伪类)
:hover
:active  


(IE7-不支持)
:focus
:lang() 


(IE8-不支持)
:target
:enabled
:disabled
:checked 
:nth-child(n)
:nth-last-child(n)
:first-child
:last-child
:only-child
:nth-of-type(n)
:nth-last-of-type(n)
:first-of-type
:last-of-type
:only-of-type
:root
:not
:empty
:target

【伪元素】

(只有当选择器部分和左大括号之间有空格时,IE6-浏览器才支持)
:first-letter
:first-line

(IE7-不支持)
:before
:after


(IE8-不支持)
::selection

【关键字】


(IE7-浏览器不支持)
inherit

(IE浏览器不支持)
initial


(IE不支持,safari9-不支持,ios9.2-不支持,android4.4.4-不支持)
unset
all


(只有safari9.1+和ios9.3+支持)
revert

【calc】

注意:android4.4-4.4.4只支持加法和减法。IE9不支持用于backround-position

(IE8-、safari5.1-、ios5.1-、android4.3-不支持)
calc

【单位】

(全兼容)
px
in
cm
mm
q
pt
pc
em
ex
ch

(IE8-不支持)
rem


(IE8-浏览器不支持,IOS7.1-不支持,android4.3-不支持,对于vmax所有IE浏览器都不支持)
vh
vw
vmin
vmax

一个不是计算机专业的理科生,转行学前端

如果你也有一个编程梦,这是咱们的前端学习QQ群:784-783-012

(在线学习,8个月时间,目前就业,广州工作,月薪16k)

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,951评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,606评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,601评论 0 350
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,478评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,565评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,587评论 1 293
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,590评论 3 414
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,337评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,785评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,096评论 2 330
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,273评论 1 344
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,935评论 5 339
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,578评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,199评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,440评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,163评论 2 366
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,133评论 2 352

推荐阅读更多精彩内容

  • 1.块级元素和行内元素 块级(block-level)元素;行内(内联、inline-level)元素。 块元素的...
    饥人谷_小侯阅读 1,998评论 1 4
  • 选择qi:是表达式 标签选择器 类选择器 属性选择器 继承属性: color,font,text-align,li...
    love2013阅读 2,312评论 0 11
  • 一、CSS入门 1、css选择器 选择器的作用是“用于确定(选定)要进行样式设定的标签(元素)”。 有若干种形式的...
    宠辱不惊丶岁月静好阅读 1,591评论 0 6
  • CSS对浏览器的兼容性有时让人很头疼,或许当你了解当中的技巧跟原理,就会觉得也不是难事,从网上收集了IE7,6与F...
    年轻人多学点阅读 357评论 0 7
  • 电影《小天使以雅》(超新约全书)。 莫名其妙的电影,不明所以地看完。据说是喜剧。看的过程中轻松愉悦。可是,倒计时清...
    天蓝之蓝阅读 1,385评论 0 3