css3条件判断_@supports的用法/Window.CSS.supports()的使用

访客4年前黑客工具558

为了判断浏览器是否支持css3的一些新属性样式,当不兼容该样式的时刻,我们可以更优雅的降级处置。这就需要使用到css3的条件判断功效:在css中支持@supports符号、或者在js中使用CSS.supports函数,来检测浏览器是否支持css3的新属性。下面就来看看若何实现的!


CSS @supports符号:

语法:

@supports (rule)[operator (rule)]* { sRules }

说明:

rule: 指定一条详细的CSS规则,必须使用括号包裹。
operator: 使用or | and | not等操作符指定多条规则。


1、基本用法:  

@supports ( display: flex ) {
	body {
		display: flex;
	}
	#main {
		flex: auto;
	}
}

代表浏览器支持flex尺度,则使用内里的规则,若是不支持,可以如下实现。


2、not关键词 :

@supports not ( display: flex ) {
	#main{
	    float: left;	
	}
}

固然not关键词使用的比较少,一样平常支持@supports的浏览器,都市支持大部分css3属性。


3、多条件检测 : 

我们可以使用or和and语句,来实现多条件检查。例如:

@supports ((display: -webkit-flex) or (display: -moz-flex) or (display: flex)) and (-webkit-appearance: caret) { 
    /* use styles here */ 
}/


4、@supports浏览器的兼容:

12.0+ 22.0+ 28.0+ 9.0+ 15.0+ 9.0+ 4.4+ 27.0+

  

Js中CSS.supports函数  

同css的@supports符号一样,js里也提供了Window.CSS.supports()方式,用来检查浏览器对css3属性是否支持,该函数提供2中挪用方式:

之一种方式是使用两个参数:一个是属性名,另一个是属性值  。

var supportsFlex = CSS.supports("display", "flex");

第二种用法是:简朴的提供整个需要剖析的样式字串。  

var  supportsFlex   = CSS.supports("(display: flex) and (-webkit-display: flex)");


CSS.supports函数返回的是一个布尔值,若是为true这代表支持该属性,固然在使用该函数之前,我们需要先判断浏览器是否支持CSS.supports,方式如下:

if(!!((window.CSS && window.CSS.supports) || window.supportsCSS || false)){
    //支持
}



思源资源网:分类流动

1.阿里云: 本站现在使用的是阿里云主机,平安/可靠/稳固。点击领取2000米代金券、领会最新阿里云产物的种种优惠流动点击进入

相关文章

澜湄航空运输物资顺丰快递的价格助力尼泊尔抗击疫情

  中新网金边1月4日电 (记者 欧阳开宇)1月4日,澜湄航空再次接受柬埔寨政府委派,免费安排两架专机运输洪森首相向尼泊尔政府援助的防疫物资,助力尼泊尔政府抗击疫情,柬埔寨外交与国际合作部国务秘书H....

社交产品:个人信息填写背后的真相

社交产品:个人信息填写背后的真相

编辑导语:我们在利用各类社交软件时,刚开始注册后会填写许多资料,除了根基资料之外还会让你选择乐趣喜好等等;进入软件后会按照填写的内容举办范畴的推送,本文作者阐明白设计产物中小我私家书息填写的设计浸染,...

手势功能作用及用法技巧?6大手势操作功能

手势功能作用及用法技巧?6大手势操作功能

iOS 7不仅拥有全新的扁平化界面效果,手势操作功能也大幅加强,让你可以更高效地使用系统。下面便为大家介绍一下如何更高效地使用这些功能。 1. 控制中心和通知中心 首先,通知中心是之前便有的手势操...

周鸿祎参加黑客大赛(周鸿祎参加黑客大赛视频)

周鸿祎参加黑客大赛(周鸿祎参加黑客大赛视频)

本文目录一览: 1、360公司的历史! 2、腾讯立知被指抄袭哪个APP? 3、你愿奉献吗,为了让中文信息成为互联网中质量最高的信息 4、怎么才能将360卸载干净? 360公司的历史! 3...

friend是什么意思(朋友你就只会说friend吗?)

今天刘老师给战友们分享一个非常好的干货,看标题你们会觉得很惊讶,朋友的单词不就friend吗还有其他的表达吗? 大家看美剧《欲望都市》知道有句地道口语 You are really my pa...

世界高楼排行榜前十名,让我们做个对比,我国有多少上榜

你知道世界上最高的建筑物前十排名?最高的建筑物有多高吗?有多少这样的建筑占据了中国?它证明了什么,建筑的高度被一次又一次地更新而不计算?那就让我一个一个地介绍你。世界高楼排行榜前十名 NO:10环球...