国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > CSS > 正文

JS代碼片段:判斷瀏覽器是否支持CSS3屬性

2024-07-11 09:05:31
字體:
來源:轉載
供稿:網友

網頁制作Webjx文章簡介:js判斷瀏覽器是否支持css3屬性。

var cssSupports = (function() {
 var div = document.createElement('div'),
  vendors = 'Khtml O Moz Webkit'.split(' '),
  len = vendors.length;
 return function(prop) {
  if ( prop in div.style ) return true;
  if ('-ms-' + prop in div.style) return true;
  
  prop = prop.replace(/^[a-z]/, function(val) {
   return val.toUpperCase();
  });

  while(len--) {
   if ( vendors[len] + prop in div.style ) {
   return true;
  }
 }
  return false;
 };
})();

下面簡單說下兩個實例:border-radius

判斷瀏覽器是否支持border-radius,支持則給html添加class為border-radius,否則添加class為no-border-radius

if(cssSupports('borderRadius')){
 var oHtml = document.documentElement;
 oHtml.className += ' border-radius';
}else{
 oHtml.className += ' no-border-radius';
}

flex

因為這個flex是出現在display的值上面的,而我們上面的方法其實只適用于屬性,所以直接是不行的,我們可以通過曲線的方法來判斷,和flex相關的還有很多其他的屬性如order,align-content,align-item,align-slef等,我們就用最簡單的order來曲線判斷是否支持flex吧。(注意因為flex除了標準版本外,還有其他兩個版本,這里只挑標準的屬性判斷)

if(cssSupports('order')){
 var oHtml = document.documentElement;
 oHtml.className += ' flex';
}else{
 oHtml.className += ' no-flex';
}

如果你對上面那段js有點不明白,你可以在控制臺運行這段代碼,就會看到所有style的屬性

(function(){
 var oDiv = document.createElement('div');

 for(var prop in oDiv.style){
  console.log(prop);
 }
})();

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 新兴县| 额尔古纳市| 崇阳县| 柞水县| 广灵县| 师宗县| 商丘市| 酉阳| 南江县| 大方县| 嘉义市| 安化县| 额济纳旗| 福州市| 景德镇市| 宁乡县| 河源市| 万宁市| 政和县| 朝阳县| 汾阳市| 东至县| 木里| 青州市| 城固县| 永新县| 齐齐哈尔市| 涟水县| 德阳市| 崇信县| 宜章县| 柳江县| 聂拉木县| 涡阳县| 麟游县| 民丰县| 青海省| 长武县| 肇源县| 拜城县| 焦作市|