前面的话

  对于前端工程师来说,不想面对又不得不面对的一个问题就是兼容性。在几年之前,处理兼容性,一般地就是处理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.-不支持)
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.-、IOS3.-6.1、android2.-.3需要添加-webkit-前缀)
transition-property
transition-duration
transiton-timing-function
transition-delay
transition

【变形transform】

(IE9-不支持,safari3.-、android2.-4.4.、IOS3.-.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-、IOS3.-8.4、android2.-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.-不支持,safari和IOS需要添加-webkit-前缀)
mix-blend-mode
background-blend-mode
isolation

【滤镜filter】

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

【倒影box-reflect】

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

【will-change】

(IE13+、chrome49+、safari9.+、IOS9.+、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.-不支持,android4.4.4-不支持)
unset
all (只有safari9.+和ios9.+支持)
revert

【calc】 

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

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

【单位】

(全兼容)
px
in
cm
mm
q
pt
pc
em
ex
ch (IE8-不支持)
rem (IE8-浏览器不支持,IOS7.-不支持,android4.-不支持,对于vmax所有IE浏览器都不支持)
vh
vw
vmin
vmax

CSS兼容性详解的更多相关文章

  1. CSS选择器详解(伪类) 转 http://blog.csdn.net/Panda_m/article/details/50084699

    CSS选择器详解 之 伪类 伪类对大小写不敏感 结构伪类选择器 结构伪类是CSS3新增的类型选择器,利用DOM树实现元素过滤,通过文档结构的相互关系来匹配元素,可以减少class和id属性的定义,使文 ...

  2. css filter详解

    css filter详解 filter 属性详解 属性 名称 类型 说明 grayscale 灰度 值为数值 取值范围从0到1的小数(包括0和1) sepia 褐色 值为数值 取值范围从0到1的小数( ...

  3. JSX设置CSS样式详解

    JSX设置CSS样式详解 1. 使用className设置样式(CSS的其他选择器也是同理) (1)定义一个CSS文件style.css,和普通CSS一样定义class选择器 .sty1{//和普通C ...

  4. 带你走进CSS定位详解

    学习CSS相关知识,定位是其中的重点,也是难点之一,如果不了解css定位有时候都不知道怎么用,下面整理了一下关于定位属性的具体理解和应用方案. 一:定位 定位属性列表 position top bot ...

  5. 此博客使用的CSS样式详解!

    此博客使用的CSS样式详解! 页面使用的博客园模板为:LuxInteriorLight,可以在博客皮肤里找到. 页首屏蔽广告代码 <script>console.log("顶部标 ...

  6. 转:CSS圆角详解

    CSS3是样式表(style sheet)语言的最新版本,它的一大优点就是支持圆角. 网页设计大师Nicholas Zakas的最新文章,清晰易懂地解释了CSS3圆角的各个方面,非常值得学习.以下就是 ...

  7. CSS 计数器详解

    在前端开发中总少不了列表项,对于列表项序号,射鸡师一般会列出个1,2,3...序号.在不了解css计数器属性之前,我一般会用精灵图,用类名来区分序列号图片.这样做尽管可以达到目的,但是很不方便,开发过 ...

  8. CSS中详解hight属性

    目录结构: // contents structure [-] hight属性值类型一览表 height的%的使用 定义 实例 需要注意的 参考文章 hight属性值类型一览表 value descr ...

  9. CSS长度单位详解

    序言 长度单位可以总体的分为绝对长度单位和相对长度单位.CSS中最为大家熟知的无疑是px和em,但与此同时还存在pt, rem, vw, vh等其他计量单位,使用好它们可以大大增长我们的开发效率.本篇 ...

随机推荐

  1. 2-物联网开发标配方案(51单片机程序介绍+WIFI程序介绍)

    上一节  https://www.cnblogs.com/yangfengwu/p/9944438.html 购买云服务器安装MQTT就不用说了,以前写过文章介绍 https://www.cnblog ...

  2. GIT 工作区和暂存区

    工作区和暂存区 Git和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念. 先来看名词解释. 工作区(Working Directory) 就是你在电脑里能看到的目录,比如我的studygit ...

  3. 《MySQL必知必会》[06] 触发器

    1.触发器 MySQL中的触发器概念,和Java中的事件监听器有点相似.当你想要某条语句在某个事件发生时自动执行,就要用到触发器了. 触发器能响应如下三类语句: DELETE INSERT UPDAT ...

  4. 高速LVDS电平简介

    一.LVDS简介 1.1.LVDS信号介绍LVDS:Low Voltage Differential Signaling,低电压差分信号.LVDS传输支持速率一般在155Mbps(大约为77MHZ)以 ...

  5. Luogu4528 CTSC2008 图腾 树状数组、容斥

    传送门 设$f_i$表示$i$排列的数量,其中$x$表示不确定 那么$$ans=f_{1324}-f_{1432}-f_{1243}=(f_{1x2x}-f_{1423})-(f_{14xx}-f_{ ...

  6. git 提交新增文件到网站

    git add -A 是将所有的修改都提交.你可以用git status查看当前的变化,然后通过git add xxx有选择的提交.git commit 是将变化先提交到本地.git commit - ...

  7. Python_函数_复习_习题_24

    # 函数 # 可读性强 复用性强# def 函数名(): # 函数体 #return 返回值# 所有的函数 只定义不调用就一定不执行 #先定义后调用 #函数名() #不接收返回值#返回值 = 函数名( ...

  8. http状态码 301、302区别

    http状态码301和302详解及区别——辛酸的探索之路 [HTTP]状态码301与302 HTTP返回码中301与302的区别 http状态码301和302详解及区别

  9. scenario testing

    我们的APP“吃了么”是专为爱美食的人打造的,典型的用户自然是那些喜欢美食的“吃货”们,当然也可以为想要快速找到周边餐馆的童鞋提供便利.还有一种典型的用户就是喜欢自己烹调食物的人. 我们整理出来了下面 ...

  10. 《Linux内核分析》实践4

    <Linux内核分析> 实践四--ELF文件格式分析 20135211李行之 一.概述 1.ELF全称Executable and Linkable Format,可执行连接格式,ELF格 ...