4148 lines
197 KiB
JavaScript
4148 lines
197 KiB
JavaScript
|
|
(()=>{var j=(e,A)=>()=>(A||e((A={exports:{}}).exports,A),A.exports);var Y=j((exports,module)=>{(function(scriptGlobalObject,window,document,undefined){var tests=[],ModernizrProto={_version:"4.0.0-alpha",_config:{classPrefix:"",enableClasses:!0,enableJSClass:!0,usePrefixes:!0},_q:[],on:function(e,A){var t=this;setTimeout(function(){A(t[e])},0)},addTest:function(e,A,t){tests.push({name:e,fn:A,options:t})},addAsyncTest:function(e){tests.push({name:null,fn:e})}},Modernizr=function(){};Modernizr.prototype=ModernizrProto,Modernizr=new Modernizr;var classes=[];function is(e,A){return typeof e===A}function testRunner(){var e,A,t,r,n,o,a;for(var l in tests)if(tests.hasOwnProperty(l)){if(e=[],A=tests[l],A.name&&(e.push(A.name.toLowerCase()),A.options&&A.options.aliases&&A.options.aliases.length))for(t=0;t<A.options.aliases.length;t++)e.push(A.options.aliases[t].toLowerCase());for(r=is(A.fn,"function")?A.fn():A.fn,n=0;n<e.length;n++)o=e[n],a=o.split("."),a.length===1?Modernizr[a[0]]=r:((!Modernizr[a[0]]||Modernizr[a[0]]&&!(Modernizr[a[0]]instanceof Boolean))&&(Modernizr[a[0]]=new Boolean(Modernizr[a[0]])),Modernizr[a[0]][a[1]]=r),classes.push((r?"":"no-")+a.join("-"))}}var docElement=document.documentElement,isSVG=docElement.nodeName.toLowerCase()==="svg";function setClasses(e){var A=docElement.className,t=Modernizr._config.classPrefix||"";if(isSVG&&(A=A.baseVal),Modernizr._config.enableJSClass){var r=new RegExp("(^|\\s)"+t+"no-js(\\s|$)");A=A.replace(r,"$1"+t+"js$2")}Modernizr._config.enableClasses&&(e.length>0&&(A+=" "+t+e.join(" "+t)),isSVG?docElement.className.baseVal=A:docElement.className=A)}var hasOwnProp;(function(){var e={}.hasOwnProperty;!is(e,"undefined")&&!is(e.call,"undefined")?hasOwnProp=function(A,t){return e.call(A,t)}:hasOwnProp=function(A,t){return t in A&&is(A.constructor.prototype[t],"undefined")}})(),ModernizrProto._l={},ModernizrProto.on=function(e,A){this._l[e]||(this._l[e]=[]),this._l[e].push(A),Modernizr.hasOwnProperty(e)&&setTimeout(function(){Modernizr._trigger(e,Modernizr[e])},0)},ModernizrProto._trigger=function(e,A){if(this._l[e]){var t=this._l[e];setTimeout(function(){var r,n;for(r=0;r<t.length;r++)n=t[r],n(A)},0),delete this._l[e]}};function addTest(e,A){if(typeof e=="object")for(var t in e)hasOwnProp(e,t)&&addTest(t,e[t]);else{e=e.toLowerCase();var r=e.split("."),n=Modernizr[r[0]];if(r.length===2&&(n=n[r[1]]),typeof n<"u")return Modernizr;A=typeof A=="function"?A():A,r.length===1?Modernizr[r[0]]=A:(Modernizr[r[0]]&&!(Modernizr[r[0]]instanceof Boolean)&&(Modernizr[r[0]]=new Boolean(Modernizr[r[0]])),Modernizr[r[0]][r[1]]=A),setClasses([(A&&A!==!1?"":"no-")+r.join("-")]),Modernizr._trigger(e,A)}return Modernizr}Modernizr._q.push(function(){ModernizrProto.addTest=addTest});var omPrefixes="Moz O ms Webkit",cssomPrefixes=ModernizrProto._config.usePrefixes?omPrefixes.split(" "):[];ModernizrProto._cssomPrefixes=cssomPrefixes;var atRule=function(e){var A=prefixes.length,t=window.CSSRule,r;if(typeof t>"u")return undefined;if(!e)return!1;if(e=e.replace(/^@/,""),r=e.replace(/-/g,"_").toUpperCase()+"_RULE",r in t)return"@"+e;for(var n=0;n<A;n++){var o=prefixes[n],a=o.toUpperCase()+"_"+r;if(a in t)return"@-"+o.toLowerCase()+"-"+e}return!1};ModernizrProto.atRule=atRule;var domPrefixes=ModernizrProto._config.usePrefixes?omPrefixes.toLowerCase().split(" "):[];ModernizrProto._domPrefixes=domPrefixes;function createElement(){return typeof document.createElement!="function"?document.createElement(arguments[0]):isSVG?document.createElementNS.call(document,"http://www.w3.org/2000/svg",arguments[0]):document.createElement.apply(document,arguments)}var hasEvent=function(){var e=!("onblur"in docElement);function A(t,r){var n;return t?((!r||typeof r=="string")&&(r=createElement(r||"div")),t="on"+t,n=t in r,!n&&e&&(r.setAttribute||(r=createElement("div")),r.setAttribute(t,""),n=typeof r[t]=="function",r[t]!==undefined&&(r[t]=undefined),r.removeAttribute(t)),n):!1}return A}();ModernizrProto.hasEvent=hasEvent;var html5;if(!isSVG){(function(e,A){var t="3.7.3",r=e.html5||{},n=/^<|^(?:button|map|select|textarea|object|iframe|opt
|
|||
|
|
See http://github.com/Modernizr/Modernizr/issues/1182 for more information.`),window.yepnope.apply(window,[].slice.call(arguments,0))):err("yepnope.js (aka Modernizr.load) is no longer included as part of Modernizr. Get it from http://yepnopejs.com. See http://github.com/Modernizr/Modernizr/issues/1182 for more information.")};function getBody(){var e=document.body;return e||(e=createElement(isSVG?"svg":"body"),e.fake=!0),e}function injectElementWithStyles(e,A,t,r){var n="modernizr",o,a,l,s,f=createElement("div"),u=getBody();if(parseInt(t,10))for(;t--;)l=createElement("div"),l.id=r?r[t]:n+(t+1),f.appendChild(l);return o=createElement("style"),o.type="text/css",o.id="s"+n,(u.fake?u:f).appendChild(o),u.appendChild(f),o.styleSheet?o.styleSheet.cssText=e:o.appendChild(document.createTextNode(e)),f.id=n,u.fake&&(u.style.background="",u.style.overflow="hidden",s=docElement.style.overflow,docElement.style.overflow="hidden",docElement.appendChild(u)),a=A(f,e),u.fake&&u.parentNode?(u.parentNode.removeChild(u),docElement.style.overflow=s,docElement.offsetHeight):f.parentNode.removeChild(f),!!a}function computedStyle(e,A,t){var r;if("getComputedStyle"in window){r=getComputedStyle.call(window,e,A);var n=window.console;if(r!==null)t&&(r=r.getPropertyValue(t));else if(n){var o=n.error?"error":"log";n[o].call(n,"getComputedStyle returning null, its possible modernizr test results are inaccurate")}}else r=!A&&e.currentStyle&&e.currentStyle[t];return r}var mq=function(){var e=window.matchMedia||window.msMatchMedia;return e?function(A){var t=e(A);return t&&t.matches||!1}:function(A){var t=!1;return injectElementWithStyles("@media "+A+" { #modernizr { position: absolute; } }",function(r){t=computedStyle(r,null,"position")==="absolute"}),t}}();ModernizrProto.mq=mq;function contains(e,A){return!!~(""+e).indexOf(A)}var modElem={elem:createElement("modernizr")};Modernizr._q.push(function(){delete modElem.elem});var mStyle={style:modElem.elem.style};Modernizr._q.unshift(function(){delete mStyle.style});function domToCSS(e){return e.replace(/([A-Z])/g,function(A,t){return"-"+t.toLowerCase()}).replace(/^ms-/,"-ms-")}function nativeTestProps(e,A){var t=e.length;if("CSS"in window&&"supports"in window.CSS){for(;t--;)if(window.CSS.supports(domToCSS(e[t]),A))return!0;return!1}else if("CSSSupportsRule"in window){for(var r=[];t--;)r.push("("+domToCSS(e[t])+":"+A+")");return r=r.join(" or "),injectElementWithStyles("@supports ("+r+") { #modernizr { position: absolute; } }",function(n){return computedStyle(n,null,"position")==="absolute"})}return undefined}function cssToDOM(e){return e.replace(/([a-z])-([a-z])/g,function(A,t,r){return t+r.toUpperCase()}).replace(/^-/,"")}function testProps(e,A,t,r){if(r=is(r,"undefined")?!1:r,!is(t,"undefined")){var n=nativeTestProps(e,t);if(!is(n,"undefined"))return n}for(var o,a,l,s,f,u=["modernizr","tspan","samp"];!mStyle.style&&u.length;)o=!0,mStyle.modElem=createElement(u.shift()),mStyle.style=mStyle.modElem.style;function m(){o&&(delete mStyle.style,delete mStyle.modElem)}for(l=e.length,a=0;a<l;a++)if(s=e[a],f=mStyle.style[s],contains(s,"-")&&(s=cssToDOM(s)),mStyle.style[s]!==undefined)if(!r&&!is(t,"undefined")){try{mStyle.style[s]=t}catch{}if(mStyle.style[s]!==f)return m(),A==="pfx"?s:!0}else return m(),A==="pfx"?s:!0;return m(),!1}function fnBind(e,A){return function(){return e.apply(A,arguments)}}function testDOMProps(e,A,t){var r;for(var n in e)if(e[n]in A)return t===!1?e[n]:(r=A[e[n]],is(r,"function")?fnBind(r,t||A):r);return!1}function testPropsAll(e,A,t,r,n){var o=e.charAt(0).toUpperCase()+e.slice(1),a=(e+" "+cssomPrefixes.join(o+" ")+o).split(" ");return is(A,"string")||is(A,"undefined")?testProps(a,A,r,n):(a=(e+" "+domPrefixes.join(o+" ")+o).split(" "),testDOMProps(a,A,t))}ModernizrProto.testAllProps=testPropsAll;var prefixed=ModernizrProto.prefixed=function(e,A,t){return e.indexOf("@")===0?atRule(e):(e.indexOf("-")!==-1&&(e=cssToDOM(e)),A?testPropsAll(e,A,t):testPropsAll(e,"pfx"))},prefixes=ModernizrProto._config.usePrefixes?" -webkit- -moz- -o- -ms- ".split(" "):["",""];ModernizrProto._prefixes=prefixes
|
|||
|
|
`+r;t.src="data:image/gif;base64,"+r}});Modernizr.addTest("urlparser",function(){var e;try{return e=new URL("http://modernizr.com/"),e.href==="http://modernizr.com/"}catch{return!1}});Modernizr.addTest("urlsearchparams","URLSearchParams"in window);Modernizr.addTest("vibrate",!!prefixed("vibrate",navigator));(function(){var e=createElement("video");Modernizr.addTest("video",function(){var A=!1;try{A=!!e.canPlayType,A&&(A=new Boolean(A))}catch{}return A});try{e.canPlayType&&(Modernizr.addTest("video.ogg",e.canPlayType('video/ogg; codecs="theora"').replace(/^no$/,"")),Modernizr.addTest("video.h264",e.canPlayType('video/mp4; codecs="avc1.42E01E"').replace(/^no$/,"")),Modernizr.addTest("video.h265",e.canPlayType('video/mp4; codecs="hev1"').replace(/^no$/,"")),Modernizr.addTest("video.webm",e.canPlayType('video/webm; codecs="vp8, vorbis"').replace(/^no$/,"")),Modernizr.addTest("video.vp9",e.canPlayType('video/webm; codecs="vp9"').replace(/^no$/,"")),Modernizr.addTest("video.hls",e.canPlayType('application/x-mpegURL; codecs="avc1.42E01E"').replace(/^no$/,"")),Modernizr.addTest("video.av1",e.canPlayType('video/mp4; codecs="av01"').replace(/^no$/,"")))}catch{}})();Modernizr.addAsyncTest(function(){var e,A=200,t=5,r=0,n=createElement("video"),o=n.style;function a(l){r++,clearTimeout(e);var s=l&&l.type==="playing"||n.currentTime!==0;if(!s&&r<t){e=setTimeout(a,A);return}n.removeEventListener("playing",a,!1),addTest("videoautoplay",s),n.parentNode&&n.parentNode.removeChild(n)}if(!Modernizr.video||!("autoplay"in n)){addTest("videoautoplay",!1);return}o.position="absolute",o.height=0,o.width=0;try{if(Modernizr.video.ogg)n.src="data:video/ogg;base64,T2dnUwACAAAAAAAAAABmnCATAAAAAHDEixYBKoB0aGVvcmEDAgEAAQABAAAQAAAQAAAAAAAFAAAAAQAAAAAAAAAAAGIAYE9nZ1MAAAAAAAAAAAAAZpwgEwEAAAACrA7TDlj///////////////+QgXRoZW9yYSsAAABYaXBoLk9yZyBsaWJ0aGVvcmEgMS4xIDIwMDkwODIyIChUaHVzbmVsZGEpAQAAABoAAABFTkNPREVSPWZmbXBlZzJ0aGVvcmEtMC4yOYJ0aGVvcmG+zSj3uc1rGLWpSUoQc5zmMYxSlKQhCDGMYhCEIQhAAAAAAAAAAAAAEW2uU2eSyPxWEvx4OVts5ir1aKtUKBMpJFoQ/nk5m41mUwl4slUpk4kkghkIfDwdjgajQYC8VioUCQRiIQh8PBwMhgLBQIg4FRba5TZ5LI/FYS/Hg5W2zmKvVoq1QoEykkWhD+eTmbjWZTCXiyVSmTiSSCGQh8PB2OBqNBgLxWKhQJBGIhCHw8HAyGAsFAiDgUCw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDw8PDAwPEhQUFQ0NDhESFRUUDg4PEhQVFRUOEBETFBUVFRARFBUVFRUVEhMUFRUVFRUUFRUVFRUVFRUVFRUVFRUVEAwLEBQZGxwNDQ4SFRwcGw4NEBQZHBwcDhATFhsdHRwRExkcHB4eHRQYGxwdHh4dGxwdHR4eHh4dHR0dHh4eHRALChAYKDM9DAwOExo6PDcODRAYKDlFOA4RFh0zV1A+EhYlOkRtZ00YIzdAUWhxXDFATldneXhlSFxfYnBkZ2MTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEhIVGRoaGhoSFBYaGhoaGhUWGRoaGhoaGRoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhESFh8kJCQkEhQYIiQkJCQWGCEkJCQkJB8iJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQREhgvY2NjYxIVGkJjY2NjGBo4Y2NjY2MvQmNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRUVFRISEhUXGBkbEhIVFxgZGxwSFRcYGRscHRUXGBkbHB0dFxgZGxwdHR0YGRscHR0dHhkbHB0dHR4eGxwdHR0eHh4REREUFxocIBERFBcaHCAiERQXGhwgIiUUFxocICIlJRcaHCAiJSUlGhwgIiUlJSkcICIlJSUpKiAiJSUlKSoqEBAQFBgcICgQEBQYHCAoMBAUGBwgKDBAFBgcICgwQEAYHCAoMEBAQBwgKDBAQEBgICgwQEBAYIAoMEBAQGCAgAfF5cdH1e3Ow/L66wGmYnfIUbwdUTe3LMRbqON8B+5RJEvcGxkvrVUjTMrsXYhAnIwe0dTJfOYbWrDYyqUrz7dw/JO4hpmV2LsQQvkUeGq1BsZLx+cu5iV0e0eScJ91VIQYrmqfdVSK7GgjOU0oPaPOu5IcDK1mNvnD+K8LwS87f8Jx2mHtHnUkTGAurWZlNQa74ZLSFH9oF6FPGxzLsjQO5Qe0edcpttd7BXBSqMCL4k/4tFrHIPuEQ7m1/uIWkbDMWVoDdOSuRQ9286kvVUlQjzOE6VrNguN4oRXYGkgcnih7t13/9kxvLYKQezwLTrO44sVmMPgMqORo1E0sm1/9SludkcWHwfJwTSybR4LeAz6ugWVgRaY8mV/9SluQmtHrzsBtRF/wPY+X0JuYTs+ltgrXAmlk10xQHmTu9VSIAk1+vcvU4ml2oNzrNhEtQ3CysNP8UeR35wqpKUBdGdZMSjX4WVi8nJpdpHnbhzEIdx7mwf6W1FKAiucMXrWUWVjyRf23chNtR9mIzDoT/6ZLYailAjhFlZuvPtSeZ+2oREubDoWmT3TguY+JHPdRVSLKxfKH3vgNqJ/9emeEYikGXDFNzaLjvTeGAL61mogOoeG3y6oU4rW55ydoj0lUTSR/mmRhPmF86uwIfzp3FtiufQCmppaHDlGE0r2iTzXIw3zBq5hvaTldjG4CPb9wdxAme0SyedVKczJ9AtYbgPOzYKJvZZImsN7ecrxWZg5dR6ZLj/j4qpWsIA+vYwE+Tca9ounMIsrXMB4Stiib2SPQtZv+FVIpfEbzv8ncZoLBXc3YBqTG1HsskTTotZOYTG+oVUjLk6zhP8bg4RhMUNtfZdO7FdpBuXzhJ5Fh8IKlJG7wtD9ik8r
|
|||
|
|
/*!
|
|||
|
|
* modernizr v4.0.0-alpha
|
|||
|
|
* Build https://modernizr.com/download?-adownload-ambientlight-aping-apng-appearance-applicationcache-areaping-arrow-aspectratio-atobbtoa-audio-audioautoplay-audioloop-audiopreload-avif-backdropfilter-backgroundblendmode-backgroundcliptext-backgroundsize-batteryapi-bdi-beacon-bgpositionshorthand-bgpositionxy-bgrepeatspace_bgrepeatround-bgsizecover-blobconstructor-bloburls-blobworkers-borderimage-borderradius-boxdecorationbreak-boxshadow-boxsizing-broadcastchannel-canvas-canvasblending-canvastext-canvaswinding-capture-checked-classlist-clipboard-connectioneffectivetype-contenteditable-contextmenu-cookies-cors-createelementattrs_createelement_attrs-cryptography-cssall-cssanimations-csscalc-csschunit-csscolumns-cssescape-cssexunit-cssfilters-cssgradients-cssgrid_cssgridlegacy-csshyphens_softhyphens_softhyphensfind-cssinvalid-cssmask-csspointerevents-csspositionsticky-csspseudoanimations-csspseudotransitions-cssreflections-cssremunit-cssresize-cssscrollbar-csstransforms-csstransforms3d-csstransformslevel2-csstransitions-cssvalid-cssvhunit-cssvmaxunit-cssvminunit-cssvwunit-cubicbezierrange-customelements-customevent-customproperties-customprotocolhandler-dart-datachannel-dataset-datauri-dataview-dataworkers-details-devicemotion_deviceorientation-directory-display_runin-displaytable-documentfragment-ellipsis-emoji-es5-es5array-es5date-es5function-es5object-es5string-es5syntax-es5undefined-es6array-es6class-es6collections-es6math-es6number-es6object-es6string-es6symbol-es7array-es8object-eventlistener-eventsource-exiforientation-fetch-fileinput-filereader-filesystem-flash-flexbox-flexboxlegacy-flexboxtweener-flexgap-flexwrap-focusvisible-focuswithin-fontdisplay-fontface-forcetouch-formattribute-formvalidation-framed-fullscreen-gamepads-generatedcontent-generators-geolocation-getrandomvalues-getusermedia-hairline-hashchange-hidden-hiddenscroll-history-hovermq-hsla-htmlimports-ie8compat-imgcrossorigin-indexeddb-indexeddb2-indexeddbblob-inlinesvg-input-inputformaction-inputformenctype-inputformmethod-inputformnovalidate-inputformtarget-inputsearchevent-inputtypes-intersectionobserver-intl-jpeg2000-jpegxr-json-lastchild-lazyloading-ligatures-localizednumber-localstorage-lowbandwidth-lowbattery-matchmedia-mathml-mediaqueries-mediarecorder-mediasource-messagechannel-microdata-multiplebgs-mutationobserver-notification-nthchild-objectfit-olreversed-oninput-opacity-outputelem-overflowscrolling-pagevisibility-passiveeventlisteners-peerconnection-performance-picture-placeholder-pointerevents-pointerlock-pointermq-postmessage-prefetch-preserve3d-progressbar_meter-promises-proximity-proxy-publickeycredential-pushmanager-queryselector-quotamanagement-regions-requestanimationframe-requestautocomplete-resizeobserver-restdestructuringarray_restdestructuringobject-restparameters-rgba-ruby-sandbox-scriptasync-scriptdefer-scrollsnappoints-scrolltooptions-seamless-serviceworker-sessionstorage-shadowroot-shadowrootlegacy-shapes-sharedworkers-siblinggeneral-sizes-smil-speechrecognition-speechsynthesis-spreadarray-spreadobject-srcdoc-srcset-strictmode-stringtemplate-stylescoped-subpixelfont-supports-svg-svgasimg-svgclippaths-svgfilters-svgforeignobject-target-template-textalignlast-textareamaxlength-textdecoration-textencoder_textdecoder-textshadow-texttrackapi_track-time-todataurljpeg_todataurlpng_todataurlwebp-transferables-typedarrays-unicoderange-unknownelements-urlparser-urlsearchparams-userdata-userselect-variablefonts-vibrate-video-videoautoplay-videocrossorigin-videoloop-videopreload-vml-webanimations-webaudio-webgl-webglextensions-webintents-webp-webpalpha-webpanimation-webplossless_webp_lossless-websockets-websocketsbinary-websqldatabase-webworkers-willchange-workertypeoption-wrapflow-xdomainrequest-xhr2-xhrresponsetype-xhrresponsetypearraybuffer-xhrresponsetypeblob-xhrresponsetypedocument-xhrresponsetypejson-xhrresponsetypetext-addtest-atrule-domprefixes-hasevent-load-mq-prefixed-prefixedcss-prefixes-printshiv-setclasses-testallprops-testprop-teststyles-dontmin
|
|||
|
|
*
|
|||
|
|
* Copyright (c)
|
|||
|
|
* Faruk Ates
|
|||
|
|
* Paul Irish
|
|||
|
|
* Alex Sexton
|
|||
|
|
* Ryan Seddon
|
|||
|
|
* Patrick Kettner
|
|||
|
|
* Stu Cox
|
|||
|
|
* Richard Herrera
|
|||
|
|
* Veeck
|
|||
|
|
|
|||
|
|
* MIT License
|
|||
|
|
*/
|
|||
|
|
/**
|
|||
|
|
* @preserve HTML5 Shiv 3.7.3 | @afarkas @jdalton @jon_neal @rem | MIT/GPL2 Licensed
|
|||
|
|
*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "a[download] Attribute",
|
|||
|
|
"property": "adownload",
|
|||
|
|
"caniuse": "download",
|
|||
|
|
"tags": ["media", "attribute"],
|
|||
|
|
"builderAliases": ["a_download"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WHATWG Spec",
|
|||
|
|
"href": "https://developers.whatwg.org/links.html#downloading-resources"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "a[ping] Attribute",
|
|||
|
|
"property": "aping",
|
|||
|
|
"caniuse": "ping",
|
|||
|
|
"tags": ["media", "attribute"],
|
|||
|
|
"builderAliases": ["a_ping"],
|
|||
|
|
"authors": ["Hélio Correia (@heliocorreia)"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WHATWG Spec",
|
|||
|
|
"href": "https://html.spec.whatwg.org/dev/links.html#ping"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "area[ping] Attribute",
|
|||
|
|
"property": "areaping",
|
|||
|
|
"caniuse": "ping",
|
|||
|
|
"tags": ["media", "attribute"],
|
|||
|
|
"builderAliases": ["area_ping"],
|
|||
|
|
"authors": ["Hélio Correia (@heliocorreia)"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WHATWG Spec",
|
|||
|
|
"href": "https://html.spec.whatwg.org/dev/links.html#ping"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Ambient Light Events",
|
|||
|
|
"property": "ambientlight",
|
|||
|
|
"caniuse": "ambient-light",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/ambient-light/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Application Cache",
|
|||
|
|
"property": "applicationcache",
|
|||
|
|
"caniuse": "offline-apps",
|
|||
|
|
"tags": ["storage", "offline"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en/docs/HTML/Using_the_application_cache"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["html5gears"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "HTML5 Audio Element",
|
|||
|
|
"property": "audio",
|
|||
|
|
"caniuse": "audio",
|
|||
|
|
"tags": ["html5", "audio", "media"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/En/Media_formats_supported_by_the_audio_and_video_elements"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Audio Autoplay",
|
|||
|
|
"property": "audioautoplay",
|
|||
|
|
"authors": ["Jordy van Dortmont"],
|
|||
|
|
"tags": ["audio"],
|
|||
|
|
"async": true
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Audio Loop Attribute",
|
|||
|
|
"property": "audioloop",
|
|||
|
|
"tags": ["audio", "media"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Audio Preload",
|
|||
|
|
"property": "audiopreload",
|
|||
|
|
"tags": ["audio", "media"],
|
|||
|
|
"async": true,
|
|||
|
|
"warnings": ["This test is very large – only include it if you absolutely need it"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Web Audio API",
|
|||
|
|
"property": "webaudio",
|
|||
|
|
"caniuse": "audio-api",
|
|||
|
|
"polyfills": ["dynamicaudiojs", "audiolibjs"],
|
|||
|
|
"tags": ["audio", "media"],
|
|||
|
|
"builderAliases": ["audio_webaudio_api"],
|
|||
|
|
"authors": ["Addy Osmani"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://webaudio.github.io/web-audio-api/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Battery API",
|
|||
|
|
"property": "batteryapi",
|
|||
|
|
"aliases": ["battery-api"],
|
|||
|
|
"builderAliases": ["battery_api"],
|
|||
|
|
"tags": ["battery", "device", "media"],
|
|||
|
|
"authors": ["Paul Sayre", "Alex Bradley (@abrad1212)"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en/DOM/window.navigator.mozBattery"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Low Battery Level",
|
|||
|
|
"property": "lowbattery",
|
|||
|
|
"tags": ["battery", "hardware", "mobile"],
|
|||
|
|
"builderAliases": ["battery_level"],
|
|||
|
|
"authors": ["Paul Sayre"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/Navigator/battery"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Blob constructor",
|
|||
|
|
"property": "blobconstructor",
|
|||
|
|
"aliases": ["blob-constructor"],
|
|||
|
|
"builderAliases": ["blob_constructor"],
|
|||
|
|
"caniuse": "blobbuilder",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://w3c.github.io/FileAPI/#constructorBlob"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["blobjs"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Broadcast Channel",
|
|||
|
|
"property": "broadcastchannel",
|
|||
|
|
"authors": ["Alex Neises (@AlexNeises)"],
|
|||
|
|
"caniuse": "broadcastchannel",
|
|||
|
|
"tags": ["performance", "broadcastchannel"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/BroadcastChannel"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Canvas",
|
|||
|
|
"property": "canvas",
|
|||
|
|
"caniuse": "canvas",
|
|||
|
|
"tags": ["canvas", "graphics"],
|
|||
|
|
"polyfills": ["excanvas", "slcanvas"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "canvas blending support",
|
|||
|
|
"property": "canvasblending",
|
|||
|
|
"caniuse": "canvas-blending",
|
|||
|
|
"tags": ["canvas"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://drafts.fxtf.org/compositing-1/"
|
|||
|
|
}, {
|
|||
|
|
"name": "Article",
|
|||
|
|
"href": "https://web.archive.org/web/20171003232921/http://blogs.adobe.com/webplatform/2013/01/28/blending-features-in-canvas/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "canvas.toDataURL type support",
|
|||
|
|
"property": ["todataurljpeg", "todataurlpng", "todataurlwebp"],
|
|||
|
|
"tags": ["canvas"],
|
|||
|
|
"builderAliases": ["canvas_todataurl_type"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/HTMLCanvasElement.toDataURL"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "canvas winding support",
|
|||
|
|
"property": "canvaswinding",
|
|||
|
|
"tags": ["canvas"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Article",
|
|||
|
|
"href": "https://web.archive.org/web/20170825024655/http://blogs.adobe.com/webplatform/2013/01/30/winding-rules-in-canvas/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Canvas text",
|
|||
|
|
"property": "canvastext",
|
|||
|
|
"caniuse": "canvas-text",
|
|||
|
|
"tags": ["canvas", "graphics"],
|
|||
|
|
"polyfills": ["canvastext"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Clipboard API",
|
|||
|
|
"property": "clipboard",
|
|||
|
|
"tags": ["clipboard"],
|
|||
|
|
"authors": ["Markel Ferro (@MarkelFe)"],
|
|||
|
|
"async": true,
|
|||
|
|
"warnings": ["It may return false in non-HTTPS connections as the API is only available in secure contexts"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs Clipboard Object",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/Clipboard"
|
|||
|
|
}, {
|
|||
|
|
"name": "MDN Docs Clipboard API",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/Clipboard_API"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Content Editable",
|
|||
|
|
"property": "contenteditable",
|
|||
|
|
"caniuse": "contenteditable",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WHATWG Spec",
|
|||
|
|
"href": "https://html.spec.whatwg.org/multipage/interaction.html#contenteditable"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Context menus",
|
|||
|
|
"property": "contextmenu",
|
|||
|
|
"caniuse": "menu",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/html5/interactive-elements.html#context-menus"
|
|||
|
|
}, {
|
|||
|
|
"name": "thewebrocks.com Demo",
|
|||
|
|
"href": "http://thewebrocks.com/demos/context-menu/"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["jquery-contextmenu"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Cross-Origin Resource Sharing",
|
|||
|
|
"property": "cors",
|
|||
|
|
"caniuse": "cors",
|
|||
|
|
"authors": ["Theodoor van Donge"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/HTTP/Access_control_CORS"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["pmxdr", "ppx", "flxhr"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Web Cryptography",
|
|||
|
|
"property": "cryptography",
|
|||
|
|
"caniuse": "cryptography",
|
|||
|
|
"tags": ["crypto"],
|
|||
|
|
"authors": ["roblarsen"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Editor's Draft Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/WebCryptoAPI/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "getRandomValues",
|
|||
|
|
"property": "getrandomvalues",
|
|||
|
|
"caniuse": "getrandomvalues",
|
|||
|
|
"tags": ["crypto"],
|
|||
|
|
"authors": ["komachi"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Editor’s Draft Spec",
|
|||
|
|
"href": "https://w3c.github.io/webcrypto/#Crypto-interface-methods"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "cssall",
|
|||
|
|
"property": "cssall",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Spec",
|
|||
|
|
"href": "https://drafts.csswg.org/css-cascade/#all-shorthand"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Animations",
|
|||
|
|
"property": "cssanimations",
|
|||
|
|
"caniuse": "css-animation",
|
|||
|
|
"polyfills": ["transformie", "csssandpaper"],
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"warnings": ["Android < 4 will pass this test, but can only animate a single property at a time"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Article: 'Dispelling the Android CSS animation myths'",
|
|||
|
|
"href": "https://web.archive.org/web/20180602074607/https://daneden.me/2011/12/14/putting-up-with-androids-bullshit/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Appearance",
|
|||
|
|
"property": "appearance",
|
|||
|
|
"caniuse": "css-appearance",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/CSS/-moz-appearance"
|
|||
|
|
}, {
|
|||
|
|
"name": "CSS-Tricks CSS Almanac: appearance",
|
|||
|
|
"href": "https://css-tricks.com/almanac/properties/a/appearance/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "aspectratio css property",
|
|||
|
|
"property": "aspectratio",
|
|||
|
|
"tags": ["css aspectratio", "aspect-ratio"],
|
|||
|
|
"builderAliases": ["aspectratio"],
|
|||
|
|
"caniuse":"mdn-css_properties_aspect-ratio",
|
|||
|
|
"authors": ["Debadutta Panda"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/CSS/aspect-ratio"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Backdrop Filter",
|
|||
|
|
"property": "backdropfilter",
|
|||
|
|
"authors": ["Brian Seward"],
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"caniuse": "css-backdrop-filter",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Editor’s Draft Spec",
|
|||
|
|
"href": "https://drafts.fxtf.org/filters-2/#BackdropFilterProperty"
|
|||
|
|
}, {
|
|||
|
|
"name": "WebKit Blog introduction + Demo",
|
|||
|
|
"href": "https://www.webkit.org/blog/3632/introducing-backdrop-filters/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Background Blend Mode",
|
|||
|
|
"property": "backgroundblendmode",
|
|||
|
|
"caniuse": "css-backgroundblendmode",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "CSS Blend Modes could be the next big thing in Web Design",
|
|||
|
|
"href": "https://medium.com/@bennettfeely/css-blend-modes-could-be-the-next-big-thing-in-web-design-6b51bf53743a"
|
|||
|
|
}, {
|
|||
|
|
"name": "Demo",
|
|||
|
|
"href": "https://bennettfeely.com/gradients/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Background Clip Text",
|
|||
|
|
"property": "backgroundcliptext",
|
|||
|
|
"authors": ["ausi"],
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "CSS Tricks Article",
|
|||
|
|
"href": "https://css-tricks.com/image-under-text/"
|
|||
|
|
}, {
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/CSS/background-clip"
|
|||
|
|
}, {
|
|||
|
|
"name": "Related Github Issue",
|
|||
|
|
"href": "https://github.com/Modernizr/Modernizr/issues/199"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Background Position Shorthand",
|
|||
|
|
"property": "bgpositionshorthand",
|
|||
|
|
"caniuse": "css-background-offsets",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"builderAliases": ["css_backgroundposition_shorthand"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en/CSS/background-position"
|
|||
|
|
}, {
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/css3-background/#background-position"
|
|||
|
|
}, {
|
|||
|
|
"name": "Demo",
|
|||
|
|
"href": "https://jsfiddle.net/Blink/bBXvt/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Background Position XY",
|
|||
|
|
"property": "bgpositionxy",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"builderAliases": ["css_backgroundposition_xy"],
|
|||
|
|
"authors": ["Allan Lei", "Brandom Aaron"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Demo",
|
|||
|
|
"href": "https://jsfiddle.net/allanlei/R8AYS/"
|
|||
|
|
}, {
|
|||
|
|
"name": "Adapted From",
|
|||
|
|
"href": "https://github.com/brandonaaron/jquery-cssHooks/blob/master/bgpos.js"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Background Repeat",
|
|||
|
|
"property": ["bgrepeatspace", "bgrepeatround"],
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"builderAliases": ["css_backgroundrepeat"],
|
|||
|
|
"authors": ["Ryan Seddon"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/CSS/background-repeat"
|
|||
|
|
}, {
|
|||
|
|
"name": "Test Page",
|
|||
|
|
"href": "https://jsbin.com/uzesun/"
|
|||
|
|
}, {
|
|||
|
|
"name": "Demo",
|
|||
|
|
"href": "https://jsfiddle.net/ryanseddon/yMLTQ/6/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Background Size",
|
|||
|
|
"property": "backgroundsize",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"knownBugs": ["This will false positive in Opera Mini - https://github.com/Modernizr/Modernizr/issues/396"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Related Issue",
|
|||
|
|
"href": "https://github.com/Modernizr/Modernizr/issues/396"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Background Size Cover",
|
|||
|
|
"property": "bgsizecover",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"builderAliases": ["css_backgroundsizecover"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en/CSS/background-size"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Border Image",
|
|||
|
|
"property": "borderimage",
|
|||
|
|
"caniuse": "border-image",
|
|||
|
|
"polyfills": ["css3pie"],
|
|||
|
|
"knownBugs": ["Android < 2.0 is true, but has a broken implementation"],
|
|||
|
|
"tags": ["css"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Border Radius",
|
|||
|
|
"property": "borderradius",
|
|||
|
|
"caniuse": "border-radius",
|
|||
|
|
"polyfills": ["css3pie"],
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Comprehensive Compat Chart",
|
|||
|
|
"href": "https://muddledramblings.com/table-of-css3-border-radius-compliance"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Box Decoration Break",
|
|||
|
|
"property": "boxdecorationbreak",
|
|||
|
|
"caniuse": "css-boxdecorationbreak",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/CSS/box-decoration-break"
|
|||
|
|
}, {
|
|||
|
|
"name": "Demo",
|
|||
|
|
"href": "https://jsbin.com/xojoro/edit?css,output"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Box Shadow",
|
|||
|
|
"property": "boxshadow",
|
|||
|
|
"caniuse": "css-boxshadow",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"knownBugs": [
|
|||
|
|
"WebOS false positives on this test.",
|
|||
|
|
"The Kindle Silk browser false positives"
|
|||
|
|
]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Box Sizing",
|
|||
|
|
"property": "boxsizing",
|
|||
|
|
"caniuse": "css3-boxsizing",
|
|||
|
|
"polyfills": ["borderboxmodel", "boxsizingpolyfill", "borderbox"],
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"builderAliases": ["css_boxsizing"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/CSS/box-sizing"
|
|||
|
|
}, {
|
|||
|
|
"name": "Related Github Issue",
|
|||
|
|
"href": "https://github.com/Modernizr/Modernizr/issues/248"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Calc",
|
|||
|
|
"property": "csscalc",
|
|||
|
|
"caniuse": "calc",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"builderAliases": ["css_calc"],
|
|||
|
|
"authors": ["@calvein"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS :checked pseudo-selector",
|
|||
|
|
"caniuse": "css-sel3",
|
|||
|
|
"property": "checked",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Related Github Issue",
|
|||
|
|
"href": "https://github.com/Modernizr/Modernizr/pull/879"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Font ch Units",
|
|||
|
|
"authors": ["Ron Waldon (@jokeyrhyme)"],
|
|||
|
|
"property": "csschunit",
|
|||
|
|
"caniuse": "ch-unit",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/css3-values/#font-relative-lengths"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Columns",
|
|||
|
|
"property": "csscolumns",
|
|||
|
|
"caniuse": "multicolumn",
|
|||
|
|
"tags": ["css"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Grid (old & new)",
|
|||
|
|
"property": ["cssgrid", "cssgridlegacy"],
|
|||
|
|
"authors": ["Faruk Ates"],
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "The new, standardized CSS Grid",
|
|||
|
|
"href": "https://www.w3.org/TR/css3-grid-layout/"
|
|||
|
|
}, {
|
|||
|
|
"name": "The _old_ CSS Grid (legacy)",
|
|||
|
|
"href": "https://www.w3.org/TR/2011/WD-css3-grid-layout-20110407/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Cubic Bezier Range",
|
|||
|
|
"property": "cubicbezierrange",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"builderAliases": ["css_cubicbezierrange"],
|
|||
|
|
"authors": ["@calvein"],
|
|||
|
|
"warnings": ["In old versions (pre-2013) cubic-bezier values can't be > 1 due to Webkit [bug #45761](https://bugs.webkit.org/show_bug.cgi?id=45761)"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Comprehensive Compat Chart",
|
|||
|
|
"href": "https://muddledramblings.com/table-of-css3-border-radius-compliance/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Custom Properties",
|
|||
|
|
"property": "customproperties",
|
|||
|
|
"caniuse": "css-variables",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"builderAliases": ["css_customproperties"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/CSS/--*"
|
|||
|
|
}, {
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://drafts.csswg.org/css-variables/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Display run-in",
|
|||
|
|
"property": "display-runin",
|
|||
|
|
"authors": ["alanhogan"],
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"builderAliases": ["css_displayrunin"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "CSS Tricks Article",
|
|||
|
|
"href": "https://web.archive.org/web/20111204150927/http://css-tricks.com:80/596-run-in/"
|
|||
|
|
}, {
|
|||
|
|
"name": "Related Github Issue",
|
|||
|
|
"href": "https://github.com/Modernizr/Modernizr/issues/198"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Display table",
|
|||
|
|
"property": "displaytable",
|
|||
|
|
"caniuse": "css-table",
|
|||
|
|
"authors": ["scottjehl"],
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"builderAliases": ["css_displaytable"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Detects for all additional table display values",
|
|||
|
|
"href": "https://pastebin.com/Gk9PeVaQ"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS text-overflow ellipsis",
|
|||
|
|
"property": "ellipsis",
|
|||
|
|
"caniuse": "text-overflow",
|
|||
|
|
"tags": ["css"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS.escape()",
|
|||
|
|
"property": "cssescape",
|
|||
|
|
"polyfills": ["css-escape"],
|
|||
|
|
"tags": ["css", "cssom"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Font ex Units",
|
|||
|
|
"authors": ["Ron Waldon (@jokeyrhyme)"],
|
|||
|
|
"property": "cssexunit",
|
|||
|
|
"caniuse": "mdn-css_types_length_ex",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/css3-values/#font-relative-lengths"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Supports",
|
|||
|
|
"property": "supports",
|
|||
|
|
"caniuse": "css-featurequeries",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"builderAliases": ["css_supports"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec (The @supports rule)",
|
|||
|
|
"href": "https://dev.w3.org/csswg/css3-conditional/#at-supports"
|
|||
|
|
}, {
|
|||
|
|
"name": "Related Github Issue",
|
|||
|
|
"href": "https://github.com/Modernizr/Modernizr/issues/648"
|
|||
|
|
}, {
|
|||
|
|
"name": "W3C Spec (The CSSSupportsRule interface)",
|
|||
|
|
"href": "https://dev.w3.org/csswg/css3-conditional/#the-csssupportsrule-interface"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Filters",
|
|||
|
|
"property": "cssfilters",
|
|||
|
|
"caniuse": "css-filters",
|
|||
|
|
"polyfills": ["polyfilter"],
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"builderAliases": ["css_filters"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/CSS/filter"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Flexbox",
|
|||
|
|
"property": "flexbox",
|
|||
|
|
"caniuse": "flexbox",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "The _new_ flexbox",
|
|||
|
|
"href": "https://www.w3.org/TR/css-flexbox-1/"
|
|||
|
|
}],
|
|||
|
|
"warnings": [
|
|||
|
|
"A `true` result for this detect does not imply that the `flex-wrap` property is supported; see the `flexwrap` detect."
|
|||
|
|
]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Flexbox (legacy)",
|
|||
|
|
"property": "flexboxlegacy",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"polyfills": ["flexie"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "The _old_ flexbox",
|
|||
|
|
"href": "https://www.w3.org/TR/2009/WD-css3-flexbox-20090723/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Flexbox (tweener)",
|
|||
|
|
"property": "flexboxtweener",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"polyfills": ["flexie"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "The _inbetween_ flexbox",
|
|||
|
|
"href": "https://www.w3.org/TR/2011/WD-css3-flexbox-20111129/"
|
|||
|
|
}],
|
|||
|
|
"warnings": ["This represents an old syntax, not the latest standard syntax."]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Flex Gap",
|
|||
|
|
"property": "flexgap",
|
|||
|
|
"caniuse": "flexbox-gap",
|
|||
|
|
"tags": ["css", "flexbox"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/css-align-3/#gaps"
|
|||
|
|
}],
|
|||
|
|
"authors": ["Chris Smith (@chris13524)"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Flex Line Wrapping",
|
|||
|
|
"property": "flexwrap",
|
|||
|
|
"tags": ["css", "flexbox"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/css-flexbox-1/"
|
|||
|
|
}],
|
|||
|
|
"warnings": [
|
|||
|
|
"Does not imply a modern implementation – see documentation."
|
|||
|
|
]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS :focus-visible pseudo-selector",
|
|||
|
|
"caniuse": "css-focus-visible",
|
|||
|
|
"property": "focusvisible",
|
|||
|
|
"authors": ["@esaborit4code"],
|
|||
|
|
"tags": ["css"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS :focus-within pseudo-selector",
|
|||
|
|
"caniuse": "css-focus-within",
|
|||
|
|
"property": "focuswithin",
|
|||
|
|
"tags": ["css"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Font Display",
|
|||
|
|
"property": "fontdisplay",
|
|||
|
|
"authors": ["Patrick Kettner"],
|
|||
|
|
"caniuse": "css-font-rendering-controls",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://drafts.csswg.org/css-fonts-4/#font-display-desc"
|
|||
|
|
}, {
|
|||
|
|
"name": "`font-display` for the masses",
|
|||
|
|
"href": "https://css-tricks.com/font-display-masses/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "@font-face",
|
|||
|
|
"property": "fontface",
|
|||
|
|
"authors": ["Diego Perini", "Mat Marquis"],
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"knownBugs": [
|
|||
|
|
"False Positive: WebOS https://github.com/Modernizr/Modernizr/issues/342",
|
|||
|
|
"False Positive: WP7 https://github.com/Modernizr/Modernizr/issues/538"
|
|||
|
|
],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "@font-face detection routine by Diego Perini",
|
|||
|
|
"href": "http://javascript.nwbox.com/CSSSupport/"
|
|||
|
|
}, {
|
|||
|
|
"name": "Filament Group @font-face compatibility research",
|
|||
|
|
"href": "https://docs.google.com/presentation/d/1n4NyG4uPRjAA8zn_pSQ_Ket0RhcWC6QlZ6LMjKeECo0/edit#slide=id.p"
|
|||
|
|
}, {
|
|||
|
|
"name": "Filament Grunticon/@font-face device testing results",
|
|||
|
|
"href": "https://docs.google.com/spreadsheet/ccc?key=0Ag5_yGvxpINRdHFYeUJPNnZMWUZKR2ItMEpRTXZPdUE#gid=0"
|
|||
|
|
}, {
|
|||
|
|
"name": "CSS fonts on Android",
|
|||
|
|
"href": "https://stackoverflow.com/questions/3200069/css-fonts-on-android"
|
|||
|
|
}, {
|
|||
|
|
"name": "@font-face and Android",
|
|||
|
|
"href": "http://archivist.incutio.com/viewlist/css-discuss/115960"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Generated Content",
|
|||
|
|
"property": "generatedcontent",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"warnings": ["Android may not return correct height for anything below 7px in old versions #738"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/css3-selectors/#gen-content"
|
|||
|
|
}, {
|
|||
|
|
"name": "MDN Docs on :before",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/CSS/::before"
|
|||
|
|
}, {
|
|||
|
|
"name": "MDN Docs on :after",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/CSS/::after"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Gradients",
|
|||
|
|
"caniuse": "css-gradients",
|
|||
|
|
"property": "cssgradients",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"knownBugs": ["False-positives on webOS (https://github.com/Modernizr/Modernizr/issues/202)"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Webkit Gradient Syntax",
|
|||
|
|
"href": "https://webkit.org/blog/175/introducing-css-gradients/"
|
|||
|
|
}, {
|
|||
|
|
"name": "Linear Gradient Syntax",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/CSS/linear-gradient"
|
|||
|
|
}, {
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://drafts.csswg.org/css-images-3/#gradients"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*! {
|
|||
|
|
"name": "CSS Hairline",
|
|||
|
|
"property": "hairline",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"authors": ["strarsis"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Blog post about CSS retina hairlines",
|
|||
|
|
"href": "http://dieulot.net/css-retina-hairline"
|
|||
|
|
}, {
|
|||
|
|
"name": "Derived from",
|
|||
|
|
"href": "https://gist.github.com/dieulot/520a49463f6058fbc8d1"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS HSLA Colors",
|
|||
|
|
"caniuse": "css3-colors",
|
|||
|
|
"property": "hsla",
|
|||
|
|
"tags": ["css"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Hyphens",
|
|||
|
|
"caniuse": "css-hyphens",
|
|||
|
|
"property": ["csshyphens", "softhyphens", "softhyphensfind"],
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"builderAliases": ["css_hyphens"],
|
|||
|
|
"async": true,
|
|||
|
|
"authors": ["David Newton"],
|
|||
|
|
"warnings": [
|
|||
|
|
"These tests currently require document.body to be present",
|
|||
|
|
"If loading Hyphenator.js via yepnope, be cautious of issue 158: https://github.com/mnater/hyphenator/issues/158",
|
|||
|
|
"This is very large – only include it if you absolutely need it"
|
|||
|
|
],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "The Current State of Hyphenation on the Web.",
|
|||
|
|
"href": "https://davidnewton.ca/the-current-state-of-hyphenation-on-the-web"
|
|||
|
|
}, {
|
|||
|
|
"name": "Hyphenation Test Page",
|
|||
|
|
"href": "https://web.archive.org/web/20150319125549/http://davidnewton.ca/demos/hyphenation/test.html"
|
|||
|
|
}, {
|
|||
|
|
"name": "Hyphenation is Language Specific",
|
|||
|
|
"href": "https://code.google.com/p/hyphenator/source/diff?spec=svn975&r=975&format=side&path=/trunk/Hyphenator.js#sc_svn975_313"
|
|||
|
|
}, {
|
|||
|
|
"name": "Related Modernizr Issue",
|
|||
|
|
"href": "https://github.com/Modernizr/Modernizr/issues/312"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS :invalid pseudo-class",
|
|||
|
|
"property": "cssinvalid",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/CSS/:invalid"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS :last-child pseudo-selector",
|
|||
|
|
"caniuse": "css-sel3",
|
|||
|
|
"property": "lastchild",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"builderAliases": ["css_lastchild"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Related Github Issue",
|
|||
|
|
"href": "https://github.com/Modernizr/Modernizr/pull/304"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Mask",
|
|||
|
|
"caniuse": "css-masks",
|
|||
|
|
"property": "cssmask",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"builderAliases": ["css_mask"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Webkit blog on CSS Masks",
|
|||
|
|
"href": "https://webkit.org/blog/181/css-masks/"
|
|||
|
|
}, {
|
|||
|
|
"name": "Safari Docs",
|
|||
|
|
"href": "https://developer.apple.com/library/archive/documentation/InternetWeb/Conceptual/SafariVisualEffectsProgGuide/Masks/Masks.html"
|
|||
|
|
}, {
|
|||
|
|
"name": "CSS SVG mask",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/CSS/mask"
|
|||
|
|
}, {
|
|||
|
|
"name": "Combine with clippaths for awesomeness",
|
|||
|
|
"href": "https://web.archive.org/web/20150508193041/http://generic.cx:80/for/webkit/test.html"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Media Queries",
|
|||
|
|
"caniuse": "css-mediaqueries",
|
|||
|
|
"property": "mediaqueries",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"builderAliases": ["css_mediaqueries"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Multiple Backgrounds",
|
|||
|
|
"caniuse": "multibackgrounds",
|
|||
|
|
"property": "multiplebgs",
|
|||
|
|
"tags": ["css"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS :nth-child pseudo-selector",
|
|||
|
|
"caniuse": "css-sel3",
|
|||
|
|
"property": "nthchild",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Related Github Issue",
|
|||
|
|
"href": "https://github.com/Modernizr/Modernizr/pull/685"
|
|||
|
|
}, {
|
|||
|
|
"name": "Sitepoint :nth-child documentation",
|
|||
|
|
"href": "https://www.sitepoint.com/atoz-css-screencast-nth-child/"
|
|||
|
|
}],
|
|||
|
|
"authors": ["@emilchristensen"],
|
|||
|
|
"knownBugs": ["Known false negative in Safari 3.1 and Safari 3.2.2"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Object Fit",
|
|||
|
|
"caniuse": "object-fit",
|
|||
|
|
"property": "objectfit",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"builderAliases": ["css_objectfit"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Opera Article on Object Fit",
|
|||
|
|
"href": "https://dev.opera.com/articles/css3-object-fit-object-position/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Opacity",
|
|||
|
|
"caniuse": "css-opacity",
|
|||
|
|
"property": "opacity",
|
|||
|
|
"tags": ["css"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Overflow Scrolling",
|
|||
|
|
"property": "overflowscrolling",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"builderAliases": ["css_overflow_scrolling"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Article on iOS overflow scrolling",
|
|||
|
|
"href": "https://css-tricks.com/snippets/css/momentum-scrolling-on-ios-overflow-elements/"
|
|||
|
|
}, {
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-overflow-scrolling"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Pointer Events",
|
|||
|
|
"caniuse": "pointer-events",
|
|||
|
|
"property": "csspointerevents",
|
|||
|
|
"authors": ["ausi"],
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"builderAliases": ["css_pointerevents"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/CSS/pointer-events"
|
|||
|
|
}, {
|
|||
|
|
"name": "Test Project Page",
|
|||
|
|
"href": "https://ausi.github.com/Feature-detection-technique-for-pointer-events/"
|
|||
|
|
}, {
|
|||
|
|
"name": "Test Project Wiki",
|
|||
|
|
"href": "https://github.com/ausi/Feature-detection-technique-for-pointer-events/wiki"
|
|||
|
|
}, {
|
|||
|
|
"name": "Related Github Issue",
|
|||
|
|
"href": "https://github.com/Modernizr/Modernizr/issues/80"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS position: sticky",
|
|||
|
|
"property": "csspositionsticky",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"builderAliases": ["css_positionsticky"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Chrome bug report",
|
|||
|
|
"href": "https://bugs.chromium.org/p/chromium/issues/detail?id=322972"
|
|||
|
|
}],
|
|||
|
|
"warnings": ["using position:sticky on anything but top aligned elements is buggy in Chrome < 37 and iOS <=7+"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Generated Content Animations",
|
|||
|
|
"property": "csspseudoanimations",
|
|||
|
|
"tags": ["css"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Transitions",
|
|||
|
|
"property": "csstransitions",
|
|||
|
|
"caniuse": "css-transitions",
|
|||
|
|
"tags": ["css"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Generated Content Transitions",
|
|||
|
|
"property": "csspseudotransitions",
|
|||
|
|
"tags": ["css"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Reflections",
|
|||
|
|
"caniuse": "css-reflections",
|
|||
|
|
"property": "cssreflections",
|
|||
|
|
"tags": ["css"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Regions",
|
|||
|
|
"caniuse": "css-regions",
|
|||
|
|
"authors": ["Mihai Balan"],
|
|||
|
|
"property": "regions",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"builderAliases": ["css_regions"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/css3-regions/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Font rem Units",
|
|||
|
|
"caniuse": "rem",
|
|||
|
|
"authors": ["nsfmc"],
|
|||
|
|
"property": "cssremunit",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"builderAliases": ["css_remunit"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/css3-values/#relative0"
|
|||
|
|
}, {
|
|||
|
|
"name": "Font Size with rem by Jonathan Snook",
|
|||
|
|
"href": "https://snook.ca/archives/html_and_css/font-size-with-rem"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS UI Resize",
|
|||
|
|
"property": "cssresize",
|
|||
|
|
"caniuse": "css-resize",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"builderAliases": ["css_resize"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/css3-ui/#resize"
|
|||
|
|
}, {
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en/CSS/resize"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS rgba",
|
|||
|
|
"caniuse": "css3-colors",
|
|||
|
|
"property": "rgba",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "CSSTricks Tutorial",
|
|||
|
|
"href": "https://css-tricks.com/rgba-browser-support/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Stylable Scrollbars",
|
|||
|
|
"property": "cssscrollbar",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"builderAliases": ["css_scrollbars"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Scroll Snap Points",
|
|||
|
|
"property": "scrollsnappoints",
|
|||
|
|
"caniuse": "css-snappoints",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Setting native-like scrolling offsets in CSS with Scrolling Snap Points",
|
|||
|
|
"href": "http://generatedcontent.org/post/66817675443/setting-native-like-scrolling-offsets-in-css-with"
|
|||
|
|
}, {
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Scroll_Snap_Points"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["scrollsnap"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Shapes",
|
|||
|
|
"property": "shapes",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/css-shapes"
|
|||
|
|
}, {
|
|||
|
|
"name": "Examples from Adobe",
|
|||
|
|
"href": "https://web.archive.org/web/20171230010236/http://webplatform.adobe.com:80/shapes"
|
|||
|
|
}, {
|
|||
|
|
"name": "Examples from CSS-Tricks",
|
|||
|
|
"href": "https://css-tricks.com/examples/ShapesOfCSS/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS general sibling selector",
|
|||
|
|
"caniuse": "css-sel3",
|
|||
|
|
"property": "siblinggeneral",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Related Github Issue",
|
|||
|
|
"href": "https://github.com/Modernizr/Modernizr/pull/889"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Subpixel Fonts",
|
|||
|
|
"property": "subpixelfont",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"builderAliases": ["css_subpixelfont"],
|
|||
|
|
"authors": ["@derSchepp", "@gerritvanaaken", "@rodneyrehm", "@yatil", "@ryanseddon"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Origin Test",
|
|||
|
|
"href": "https://github.com/gerritvanaaken/subpixeldetect"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS :target pseudo-class",
|
|||
|
|
"caniuse": "css-sel3",
|
|||
|
|
"property": "target",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/CSS/:target"
|
|||
|
|
}],
|
|||
|
|
"authors": ["@zachleat"],
|
|||
|
|
"warnings": ["Opera Mini supports :target but doesn't update the hash for anchor links."]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS text-align-last",
|
|||
|
|
"property": "textalignlast",
|
|||
|
|
"caniuse": "css-text-align-last",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"warnings": ["IE does not support the 'start' or 'end' values."],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Quirksmode",
|
|||
|
|
"href": "https://www.quirksmode.org/css/text/textalignlast.html"
|
|||
|
|
}, {
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/CSS/text-align-last"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS textDecoration",
|
|||
|
|
"property": "textdecoration",
|
|||
|
|
"caniuse": "text-decoration",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/css-text-decor-3/#line-decoration"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS textshadow",
|
|||
|
|
"property": "textshadow",
|
|||
|
|
"caniuse": "css-textshadow",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"knownBugs": ["FF3.0 will false positive on this test"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Transforms",
|
|||
|
|
"property": "csstransforms",
|
|||
|
|
"caniuse": "transforms2d",
|
|||
|
|
"tags": ["css"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Transforms 3D",
|
|||
|
|
"property": "csstransforms3d",
|
|||
|
|
"caniuse": "transforms3d",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"knownBugs": [
|
|||
|
|
"Chrome may occasionally fail this test on some systems; more info: https://bugs.chromium.org/p/chromium/issues/detail?id=129004, however, the issue has since been closed (marked as fixed)."
|
|||
|
|
]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Transforms Level 2",
|
|||
|
|
"property": "csstransformslevel2",
|
|||
|
|
"authors": ["rupl"],
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "CSSWG Draft Spec",
|
|||
|
|
"href": "https://drafts.csswg.org/css-transforms-2/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS Transform Style preserve-3d",
|
|||
|
|
"property": "preserve3d",
|
|||
|
|
"authors": ["denyskoch", "aFarkas"],
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/CSS/transform-style"
|
|||
|
|
}, {
|
|||
|
|
"name": "Related Github Issue",
|
|||
|
|
"href": "https://github.com/Modernizr/Modernizr/issues/1748"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS user-select",
|
|||
|
|
"property": "userselect",
|
|||
|
|
"caniuse": "user-select-none",
|
|||
|
|
"authors": ["ryan seddon"],
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"builderAliases": ["css_userselect"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Related Modernizr Issue",
|
|||
|
|
"href": "https://github.com/Modernizr/Modernizr/issues/250"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS :valid pseudo-class",
|
|||
|
|
"property": "cssvalid",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/CSS/:valid"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Variable Open Type Fonts",
|
|||
|
|
"property": "variablefonts",
|
|||
|
|
"authors": ["Patrick Kettner"],
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Variable fonts on the web",
|
|||
|
|
"href": "https://webkit.org/blog/7051/variable-fonts-on-the-web/"
|
|||
|
|
}, {
|
|||
|
|
"name": "Variable fonts for responsive design",
|
|||
|
|
"href": "https://alistapart.com/blog/post/variable-fonts-for-responsive-design"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS vh unit",
|
|||
|
|
"property": "cssvhunit",
|
|||
|
|
"caniuse": "viewport-units",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"builderAliases": ["css_vhunit"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Related Modernizr Issue",
|
|||
|
|
"href": "https://github.com/Modernizr/Modernizr/issues/572"
|
|||
|
|
}, {
|
|||
|
|
"name": "Similar JSFiddle",
|
|||
|
|
"href": "https://jsfiddle.net/FWeinb/etnYC/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS vmax unit",
|
|||
|
|
"property": "cssvmaxunit",
|
|||
|
|
"caniuse": "viewport-units",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"builderAliases": ["css_vmaxunit"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Related Modernizr Issue",
|
|||
|
|
"href": "https://github.com/Modernizr/Modernizr/issues/572"
|
|||
|
|
}, {
|
|||
|
|
"name": "JSFiddle Example",
|
|||
|
|
"href": "https://jsfiddle.net/glsee/JDsWQ/4/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS vmin unit",
|
|||
|
|
"property": "cssvminunit",
|
|||
|
|
"caniuse": "viewport-units",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"builderAliases": ["css_vminunit"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Related Modernizr Issue",
|
|||
|
|
"href": "https://github.com/Modernizr/Modernizr/issues/572"
|
|||
|
|
}, {
|
|||
|
|
"name": "JSFiddle Example",
|
|||
|
|
"href": "https://jsfiddle.net/glsee/JRmdq/8/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS vw unit",
|
|||
|
|
"property": "cssvwunit",
|
|||
|
|
"caniuse": "viewport-units",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"builderAliases": ["css_vwunit"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Related Modernizr Issue",
|
|||
|
|
"href": "https://github.com/Modernizr/Modernizr/issues/572"
|
|||
|
|
}, {
|
|||
|
|
"name": "JSFiddle Example",
|
|||
|
|
"href": "https://jsfiddle.net/FWeinb/etnYC/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "will-change",
|
|||
|
|
"property": "willchange",
|
|||
|
|
"caniuse": "will-change",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://drafts.csswg.org/css-will-change/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CSS wrap-flow",
|
|||
|
|
"property": "wrapflow",
|
|||
|
|
"tags": ["css"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/css3-exclusions"
|
|||
|
|
}, {
|
|||
|
|
"name": "Example by Louie Rootfield",
|
|||
|
|
"href": "https://webdesign.tutsplus.com/tutorials/css-exclusions--cms-28087"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Custom Elements API",
|
|||
|
|
"property": "customelements",
|
|||
|
|
"caniuse": "custom-elementsv1",
|
|||
|
|
"tags": ["customelements"],
|
|||
|
|
"polyfills": ["customelements"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Specs for Custom Elements",
|
|||
|
|
"href": "https://www.w3.org/TR/custom-elements/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Custom protocol handler",
|
|||
|
|
"property": "customprotocolhandler",
|
|||
|
|
"authors": ["Ben Schwarz"],
|
|||
|
|
"builderAliases": ["custom_protocol_handler"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WHATWG Spec",
|
|||
|
|
"href": "https://html.spec.whatwg.org/dev/system-state.html#custom-handlers"
|
|||
|
|
}, {
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/navigator.registerProtocolHandler"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Dart",
|
|||
|
|
"property": "dart",
|
|||
|
|
"authors": ["Theodoor van Donge"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Language website",
|
|||
|
|
"href": "https://www.dartlang.org/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "DataView",
|
|||
|
|
"property": "dataview",
|
|||
|
|
"authors": ["Addy Osmani"],
|
|||
|
|
"builderAliases": ["dataview_api"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en/JavaScript_typed_arrays/DataView"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["jdataview"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "classList",
|
|||
|
|
"caniuse": "classlist",
|
|||
|
|
"property": "classlist",
|
|||
|
|
"tags": ["dom"],
|
|||
|
|
"builderAliases": ["dataview_api"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en/DOM/element.classList"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "createElement with Attributes",
|
|||
|
|
"property": ["createelementattrs", "createelement-attrs"],
|
|||
|
|
"tags": ["dom"],
|
|||
|
|
"builderAliases": ["dom_createElement_attrs"],
|
|||
|
|
"authors": ["James A. Rosen"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Related Github Issue",
|
|||
|
|
"href": "https://github.com/Modernizr/Modernizr/issues/258"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "dataset API",
|
|||
|
|
"caniuse": "dataset",
|
|||
|
|
"property": "dataset",
|
|||
|
|
"tags": ["dom"],
|
|||
|
|
"builderAliases": ["dom_dataset"],
|
|||
|
|
"authors": ["@phiggins42"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Document Fragment",
|
|||
|
|
"property": "documentfragment",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/REC-DOM-Level-1/level-one-core.html#ID-B63ED1A3"
|
|||
|
|
}, {
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/DocumentFragment"
|
|||
|
|
}, {
|
|||
|
|
"name": "QuirksMode Compatibility Tables",
|
|||
|
|
"href": "https://www.quirksmode.org/m/w3c_core.html#t112"
|
|||
|
|
}],
|
|||
|
|
"authors": ["Ron Waldon (@jokeyrhyme)"],
|
|||
|
|
"knownBugs": ["false-positive on Blackberry 9500, see QuirksMode note"],
|
|||
|
|
"tags": ["dom"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "[hidden] Attribute",
|
|||
|
|
"property": "hidden",
|
|||
|
|
"tags": ["dom"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WHATWG Spec",
|
|||
|
|
"href": "https://html.spec.whatwg.org/dev/interaction.html#the-hidden-attribute"
|
|||
|
|
}, {
|
|||
|
|
"name": "original implementation of detect code",
|
|||
|
|
"href": "https://github.com/aFarkas/html5shiv/blob/bf4fcc4/src/html5shiv.js#L38"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["html5shiv"],
|
|||
|
|
"authors": ["Ron Waldon (@jokeyrhyme)"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Intersection Observer",
|
|||
|
|
"property": "intersectionobserver",
|
|||
|
|
"caniuse": "intersectionobserver",
|
|||
|
|
"tags": ["dom"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://w3c.github.io/IntersectionObserver/"
|
|||
|
|
}, {
|
|||
|
|
"name": "IntersectionObserver polyfill",
|
|||
|
|
"href": "https://github.com/w3c/IntersectionObserver/tree/master/polyfill"
|
|||
|
|
}, {
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en/docs/Web/API/Intersection_Observer_API"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "microdata",
|
|||
|
|
"property": "microdata",
|
|||
|
|
"tags": ["dom"],
|
|||
|
|
"builderAliases": ["dom_microdata"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/microdata/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "DOM4 MutationObserver",
|
|||
|
|
"property": "mutationobserver",
|
|||
|
|
"caniuse": "mutationobserver",
|
|||
|
|
"tags": ["dom"],
|
|||
|
|
"authors": ["Karel Sedláček (@ksdlck)"],
|
|||
|
|
"polyfills": ["mutationobservers"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/MutationObserver"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"property": "passiveeventlisteners",
|
|||
|
|
"caniuse": "passive-event-listener",
|
|||
|
|
"tags": ["dom"],
|
|||
|
|
"authors": ["Rick Byers"],
|
|||
|
|
"name": "Passive event listeners",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WHATWG Spec",
|
|||
|
|
"href": "https://dom.spec.whatwg.org/#dom-addeventlisteneroptions-passive"
|
|||
|
|
}, {
|
|||
|
|
"name": "WICG explainer",
|
|||
|
|
"href": "https://github.com/WICG/EventListenerOptions/blob/gh-pages/explainer.md"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Shadow DOM API",
|
|||
|
|
"property": "shadowroot",
|
|||
|
|
"caniuse": "shadowdomv1",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/ShadowRoot"
|
|||
|
|
}],
|
|||
|
|
"authors": ["Kevin Coyle (@kevin-coyle-unipro)", "Pascal Lim (@pascalim)"],
|
|||
|
|
"tags": ["dom"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Shadow DOM API (Legacy)",
|
|||
|
|
"property": "shadowrootlegacy",
|
|||
|
|
"caniuse": "shadowdom",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/Element/createShadowRoot"
|
|||
|
|
}],
|
|||
|
|
"authors": ["Kevin Coyle (@kevin-coyle-unipro)", "Pascal Lim (@pascalim)"],
|
|||
|
|
"tags": ["dom"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "bdi Element",
|
|||
|
|
"property": "bdi",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/HTML/Element/bdi"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "details Element",
|
|||
|
|
"caniuse": "details",
|
|||
|
|
"property": "details",
|
|||
|
|
"tags": ["elem"],
|
|||
|
|
"builderAliases": ["elem_details"],
|
|||
|
|
"authors": ["@mathias"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Mathias' Original",
|
|||
|
|
"href": "https://mathiasbynens.be/notes/html5-details-jquery#comment-35"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "output Element",
|
|||
|
|
"property": "outputelem",
|
|||
|
|
"tags": ["elem"],
|
|||
|
|
"builderAliases": ["elem_output"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WhatWG Spec",
|
|||
|
|
"href": "https://html.spec.whatwg.org/multipage/form-elements.html#the-output-element"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "picture Element",
|
|||
|
|
"property": "picture",
|
|||
|
|
"tags": ["elem"],
|
|||
|
|
"authors": ["Scott Jehl", "Mat Marquis"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WHATWG Spec",
|
|||
|
|
"href": "https://html.spec.whatwg.org/multipage/embedded-content.html#embedded-content"
|
|||
|
|
}, {
|
|||
|
|
"name": "Relevant spec issue",
|
|||
|
|
"href": "https://github.com/ResponsiveImagesCG/picture-element/issues/87"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "progress Element",
|
|||
|
|
"caniuse": "progress",
|
|||
|
|
"property": ["progressbar", "meter"],
|
|||
|
|
"tags": ["elem"],
|
|||
|
|
"builderAliases": ["elem_progress_meter"],
|
|||
|
|
"authors": ["Stefan Wallin"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "ruby, rp, rt Elements",
|
|||
|
|
"caniuse": "ruby",
|
|||
|
|
"property": "ruby",
|
|||
|
|
"tags": ["elem"],
|
|||
|
|
"builderAliases": ["elem_ruby"],
|
|||
|
|
"authors": ["Cătălin Mariș"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WHATWG Spec",
|
|||
|
|
"href": "https://html.spec.whatwg.org/multipage/text-level-semantics.html#the-ruby-element"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Template Tag",
|
|||
|
|
"property": "template",
|
|||
|
|
"caniuse": "template",
|
|||
|
|
"tags": ["elem"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "HTML5Rocks Article",
|
|||
|
|
"href": "https://www.html5rocks.com/en/tutorials/webcomponents/template/"
|
|||
|
|
}, {
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://web.archive.org/web/20171130222649/http://www.w3.org/TR/html5/scripting-1.html"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "time Element",
|
|||
|
|
"property": "time",
|
|||
|
|
"tags": ["elem"],
|
|||
|
|
"builderAliases": ["elem_time"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WHATWG Spec",
|
|||
|
|
"href": "https://html.spec.whatwg.org/multipage/text-level-semantics.html#the-time-element"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Track element and Timed Text Track",
|
|||
|
|
"property": ["texttrackapi", "track"],
|
|||
|
|
"tags": ["elem"],
|
|||
|
|
"builderAliases": ["elem_track"],
|
|||
|
|
"authors": ["Addy Osmani"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec (Track Element)",
|
|||
|
|
"href": "https://web.archive.org/web/20121119095019/http://www.w3.org/TR/html5/the-track-element.html#the-track-element"
|
|||
|
|
}, {
|
|||
|
|
"name": "W3C Spec (Track API)",
|
|||
|
|
"href": "https://web.archive.org/web/20121119094620/http://www.w3.org/TR/html5/media-elements.html#text-track-api"
|
|||
|
|
}],
|
|||
|
|
"warnings": ["While IE10 has implemented the track element, IE10 does not expose the underlying APIs to create timed text tracks by JS (really sad)"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Unknown Elements",
|
|||
|
|
"property": "unknownelements",
|
|||
|
|
"tags": ["elem"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "The Story of the HTML5 Shiv",
|
|||
|
|
"href": "https://www.paulirish.com/2011/the-history-of-the-html5-shiv/"
|
|||
|
|
}, {
|
|||
|
|
"name": "original implementation of detect code",
|
|||
|
|
"href": "https://github.com/aFarkas/html5shiv/blob/bf4fcc4/src/html5shiv.js#L36"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["html5shiv"],
|
|||
|
|
"authors": ["Ron Waldon (@jokeyrhyme)"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Emoji",
|
|||
|
|
"property": "emoji"
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "ES5 Array",
|
|||
|
|
"property": "es5array",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "ECMAScript 5.1 Language Specification",
|
|||
|
|
"href": "https://www.ecma-international.org/ecma-262/5.1/"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["es5shim"],
|
|||
|
|
"authors": ["Ron Waldon (@jokeyrhyme)"],
|
|||
|
|
"tags": ["es5"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "ES5 Date",
|
|||
|
|
"property": "es5date",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "ECMAScript 5.1 Language Specification",
|
|||
|
|
"href": "https://www.ecma-international.org/ecma-262/5.1/"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["es5shim"],
|
|||
|
|
"authors": ["Ron Waldon (@jokeyrhyme)"],
|
|||
|
|
"tags": ["es5"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "ES5 Function",
|
|||
|
|
"property": "es5function",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "ECMAScript 5.1 Language Specification",
|
|||
|
|
"href": "https://www.ecma-international.org/ecma-262/5.1/"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["es5shim"],
|
|||
|
|
"authors": ["Ron Waldon (@jokeyrhyme)"],
|
|||
|
|
"tags": ["es5"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "ES5 Object",
|
|||
|
|
"property": "es5object",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "ECMAScript 5.1 Language Specification",
|
|||
|
|
"href": "https://www.ecma-international.org/ecma-262/5.1/"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["es5shim", "es5sham"],
|
|||
|
|
"authors": ["Ron Waldon (@jokeyrhyme)"],
|
|||
|
|
"tags": ["es5"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "ES5 Strict Mode",
|
|||
|
|
"property": "strictmode",
|
|||
|
|
"caniuse": "use-strict",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "ECMAScript 5.1 Language Specification",
|
|||
|
|
"href": "https://www.ecma-international.org/ecma-262/5.1/"
|
|||
|
|
}],
|
|||
|
|
"authors": ["@kangax"],
|
|||
|
|
"tags": ["es5"],
|
|||
|
|
"builderAliases": ["es5_strictmode"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "ES5 String",
|
|||
|
|
"property": "es5string",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "ECMAScript 5.1 Language Specification",
|
|||
|
|
"href": "https://www.ecma-international.org/ecma-262/5.1/"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["es5shim"],
|
|||
|
|
"authors": ["Ron Waldon (@jokeyrhyme)"],
|
|||
|
|
"tags": ["es5"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "JSON",
|
|||
|
|
"property": "json",
|
|||
|
|
"caniuse": "json",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Glossary/JSON"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["json2"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "ES5 Syntax",
|
|||
|
|
"property": "es5syntax",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "ECMAScript 5.1 Language Specification",
|
|||
|
|
"href": "https://www.ecma-international.org/ecma-262/5.1/"
|
|||
|
|
}, {
|
|||
|
|
"name": "original implementation of detect code",
|
|||
|
|
"href": "https://kangax.github.io/compat-table/es5/"
|
|||
|
|
}],
|
|||
|
|
"authors": ["Ron Waldon (@jokeyrhyme)"],
|
|||
|
|
"warnings": ["This detect uses `eval()`, so CSP may be a problem."],
|
|||
|
|
"tags": ["es5"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "ES5 Immutable Undefined",
|
|||
|
|
"property": "es5undefined",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "ECMAScript 5.1 Language Specification",
|
|||
|
|
"href": "https://www.ecma-international.org/ecma-262/5.1/"
|
|||
|
|
}, {
|
|||
|
|
"name": "original implementation of detect code",
|
|||
|
|
"href": "https://kangax.github.io/compat-table/es5/"
|
|||
|
|
}],
|
|||
|
|
"authors": ["Ron Waldon (@jokeyrhyme)"],
|
|||
|
|
"tags": ["es5"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "ES5",
|
|||
|
|
"property": "es5",
|
|||
|
|
"caniuse": "es5",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "ECMAScript 5.1 Language Specification",
|
|||
|
|
"href": "https://www.ecma-international.org/ecma-262/5.1/"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["es5shim", "es5sham"],
|
|||
|
|
"authors": ["Ron Waldon (@jokeyrhyme)"],
|
|||
|
|
"tags": ["es5"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "ES6 Array",
|
|||
|
|
"property": "es6array",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "ECMAScript 6 specification",
|
|||
|
|
"href": "https://www.ecma-international.org/ecma-262/6.0/index.html"
|
|||
|
|
}, {
|
|||
|
|
"name": "Last ECMAScript specification",
|
|||
|
|
"href": "https://www.ecma-international.org/ecma-262/index.html"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["es6shim"],
|
|||
|
|
"authors": ["Ron Waldon (@jokeyrhyme)"],
|
|||
|
|
"tags": ["es6"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "ES6 Arrow Functions",
|
|||
|
|
"property": "arrow",
|
|||
|
|
"authors": ["Vincent Riemer"],
|
|||
|
|
"tags": ["es6"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "ES6 Class",
|
|||
|
|
"property": "es6class",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "ECMAScript 6 language specification",
|
|||
|
|
"href": "https://www.ecma-international.org/ecma-262/6.0/#sec-class-definitions"
|
|||
|
|
}],
|
|||
|
|
"caniuse": "es6-class",
|
|||
|
|
"authors": ["dabretin"],
|
|||
|
|
"tags": ["es6"],
|
|||
|
|
"builderAliases": ["class"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "ES6 Collections",
|
|||
|
|
"property": "es6collections",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "ECMAScript 6 specification",
|
|||
|
|
"href": "https://www.ecma-international.org/ecma-262/6.0/index.html"
|
|||
|
|
}, {
|
|||
|
|
"name": "Last ECMAScript specification",
|
|||
|
|
"href": "https://www.ecma-international.org/ecma-262/index.html"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["es6shim", "weakmap"],
|
|||
|
|
"authors": ["Ron Waldon (@jokeyrhyme)"],
|
|||
|
|
"tags": ["es6"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "ES6 Generators",
|
|||
|
|
"property": "generators",
|
|||
|
|
"authors": ["Michael Kachanovskyi"],
|
|||
|
|
"tags": ["es6"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "ES6 Math",
|
|||
|
|
"property": "es6math",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "ECMAScript 6 specification",
|
|||
|
|
"href": "https://www.ecma-international.org/ecma-262/6.0/index.html"
|
|||
|
|
}, {
|
|||
|
|
"name": "Last ECMAScript specification",
|
|||
|
|
"href": "https://www.ecma-international.org/ecma-262/index.html"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["es6shim"],
|
|||
|
|
"authors": ["Ron Waldon (@jokeyrhyme)"],
|
|||
|
|
"tags": ["es6"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "ES6 Number",
|
|||
|
|
"property": "es6number",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "ECMAScript 6 specification",
|
|||
|
|
"href": "https://www.ecma-international.org/ecma-262/6.0/index.html"
|
|||
|
|
}, {
|
|||
|
|
"name": "Last ECMAScript specification",
|
|||
|
|
"href": "https://www.ecma-international.org/ecma-262/index.html"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["es6shim"],
|
|||
|
|
"authors": ["Ron Waldon (@jokeyrhyme)"],
|
|||
|
|
"tags": ["es6"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "ES6 Object",
|
|||
|
|
"property": "es6object",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "ECMAScript 6 specification",
|
|||
|
|
"href": "https://www.ecma-international.org/ecma-262/6.0/index.html"
|
|||
|
|
}, {
|
|||
|
|
"name": "Last ECMAScript specification",
|
|||
|
|
"href": "https://www.ecma-international.org/ecma-262/index.html"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["es6shim"],
|
|||
|
|
"authors": ["Ron Waldon (@jokeyrhyme)"],
|
|||
|
|
"tags": ["es6"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "ES6 Promises",
|
|||
|
|
"property": "promises",
|
|||
|
|
"caniuse": "promises",
|
|||
|
|
"polyfills": ["es6promises"],
|
|||
|
|
"authors": ["Krister Kari", "Jake Archibald"],
|
|||
|
|
"tags": ["es6"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "The ES6 promises spec",
|
|||
|
|
"href": "https://github.com/domenic/promises-unwrapping"
|
|||
|
|
}, {
|
|||
|
|
"name": "Chromium dashboard - ES6 Promises",
|
|||
|
|
"href": "https://www.chromestatus.com/features/5681726336532480"
|
|||
|
|
}, {
|
|||
|
|
"name": "JavaScript Promises: an Introduction",
|
|||
|
|
"href": "https://developers.google.com/web/fundamentals/primers/promises/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "ES6 Rest parameters",
|
|||
|
|
"property": "restparameters",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "ECMAScript 6 language specification",
|
|||
|
|
"href": "https://www.ecma-international.org/ecma-262/6.0/#sec-function-definitions"
|
|||
|
|
}],
|
|||
|
|
"caniuse": "rest",
|
|||
|
|
"authors": ["dabretin"],
|
|||
|
|
"tags": ["es6"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "ES6 Spread array",
|
|||
|
|
"property": "spreadarray",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "ECMAScript Specification",
|
|||
|
|
"href": "https://tc39.es/ecma262/#sec-array-initializer"
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"name": "Article",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Spread_syntax"
|
|||
|
|
}],
|
|||
|
|
"caniuse": "mdn-javascript_operators_spread_spread_in_arrays",
|
|||
|
|
"authors": ["dabretin"],
|
|||
|
|
"warnings": ["not for object literals (implemented in ES7)"],
|
|||
|
|
"tags": ["es6"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "ES6 Template Strings",
|
|||
|
|
"property": "stringtemplate",
|
|||
|
|
"caniuse": "template-literals",
|
|||
|
|
"builderAliases": ["templatestrings"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "ECMAScript 6 draft specification",
|
|||
|
|
"href": "https://tc39wiki.calculist.org/es6/template-strings/"
|
|||
|
|
}],
|
|||
|
|
"authors": ["dabretin"],
|
|||
|
|
"tags": ["es6"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "ES6 String",
|
|||
|
|
"property": "es6string",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "ECMAScript 6 Specification",
|
|||
|
|
"href": "https://www.ecma-international.org/ecma-262/6.0/index.html"
|
|||
|
|
}, {
|
|||
|
|
"name": "Last ECMAScript Specification",
|
|||
|
|
"href": "https://www.ecma-international.org/ecma-262/index.html"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["es6shim"],
|
|||
|
|
"authors": ["Ron Waldon (@jokeyrhyme)"],
|
|||
|
|
"tags": ["es6"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "ES6 Symbol",
|
|||
|
|
"property": "es6symbol",
|
|||
|
|
"caniuse": "mdn-javascript_builtins_symbol",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Official ECMAScript 6 specification",
|
|||
|
|
"href": "https://www.ecma-international.org/ecma-262/6.0/#sec-symbol-constructor"
|
|||
|
|
},{
|
|||
|
|
"name": "MDN web docs",
|
|||
|
|
"href": "https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/Symbol"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["es6symbol"],
|
|||
|
|
"authors": ["buhichan (@buhichan)"],
|
|||
|
|
"tags": ["es6","symbol"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "ES7 Array",
|
|||
|
|
"property": "es7array",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "ECMAScript array Specification",
|
|||
|
|
"href": "https://tc39.es/ecma262/#sec-array.prototype.includes"
|
|||
|
|
}],
|
|||
|
|
"authors": ["dabretin"],
|
|||
|
|
"tags": ["es7"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "ES7 Rest destructuring",
|
|||
|
|
"property": ["restdestructuringarray", "restdestructuringobject"],
|
|||
|
|
"caniuse" : "destructuring%20assignment",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "ECMAScript Destructuring Assignment Specification",
|
|||
|
|
"href": "https://tc39.es/ecma262/#sec-destructuring-assignment"
|
|||
|
|
}],
|
|||
|
|
"authors": ["dabretin"],
|
|||
|
|
"tags": ["es7"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "ES7 Spread object",
|
|||
|
|
"property": "spreadobject",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "ECMAScript array Specification",
|
|||
|
|
"href": "http://www.ecma-international.org/ecma-262/#sec-object-initializer"
|
|||
|
|
}],
|
|||
|
|
"authors": ["dabretin"],
|
|||
|
|
"tags": ["es7"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "ES8 Object",
|
|||
|
|
"property": "es8object",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "ECMAScript specification: Object.entries",
|
|||
|
|
"href": "https://www.ecma-international.org/ecma-262/#sec-object.entries"
|
|||
|
|
}, {
|
|||
|
|
"name": "ECMAScript specification: Object.values",
|
|||
|
|
"href": "https://www.ecma-international.org/ecma-262/#sec-object.values"
|
|||
|
|
}],
|
|||
|
|
"caniuse": "object-entries,object-values",
|
|||
|
|
"authors": ["dabretin"],
|
|||
|
|
"tags": ["es8"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "CustomEvent",
|
|||
|
|
"property": "customevent",
|
|||
|
|
"tags": ["customevent"],
|
|||
|
|
"authors": ["Alberto Elias"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/DOM-Level-3-Events/#interface-CustomEvent"
|
|||
|
|
}, {
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en/docs/Web/API/CustomEvent"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["eventlistener"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Orientation and Motion Events",
|
|||
|
|
"property": ["devicemotion", "deviceorientation"],
|
|||
|
|
"caniuse": "deviceorientation",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Editor's Draft Spec",
|
|||
|
|
"href": "https://w3c.github.io/deviceorientation/"
|
|||
|
|
}, {
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/Detecting_device_orientation"
|
|||
|
|
}],
|
|||
|
|
"authors": ["Shi Chuan"],
|
|||
|
|
"tags": ["event"],
|
|||
|
|
"builderAliases": ["event_deviceorientation_motion"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Event Listener",
|
|||
|
|
"property": "eventlistener",
|
|||
|
|
"caniuse": "addeventlistener",
|
|||
|
|
"authors": ["Andrew Betts (@triblondon)"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/DOM-Level-2-Events/events.html#Events-Registration-interfaces"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["eventlistener"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Force Touch Events",
|
|||
|
|
"property": "forcetouch",
|
|||
|
|
"authors": ["Kraig Walker"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Responding to Force Touch Events from JavaScript",
|
|||
|
|
"href": "https://developer.apple.com/library/archive/documentation/AppleApplications/Conceptual/SafariJSProgTopics/RespondingtoForceTouchEventsfromJavaScript.html"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Hashchange event",
|
|||
|
|
"property": "hashchange",
|
|||
|
|
"caniuse": "hashchange",
|
|||
|
|
"tags": ["history"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/WindowEventHandlers/onhashchange"
|
|||
|
|
}],
|
|||
|
|
"polyfills": [
|
|||
|
|
"jquery-hashchange",
|
|||
|
|
"moo-historymanager",
|
|||
|
|
"jquery-ajaxy",
|
|||
|
|
"hasher",
|
|||
|
|
"shistory"
|
|||
|
|
]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "onInput Event",
|
|||
|
|
"property": "oninput",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers.oninput"
|
|||
|
|
}, {
|
|||
|
|
"name": "WHATWG Spec",
|
|||
|
|
"href": "https://html.spec.whatwg.org/multipage/input.html#common-input-element-attributes"
|
|||
|
|
}, {
|
|||
|
|
"name": "Related Github Issue",
|
|||
|
|
"href": "https://github.com/Modernizr/Modernizr/issues/210"
|
|||
|
|
}],
|
|||
|
|
"authors": ["Patrick Kettner"],
|
|||
|
|
"tags": ["event"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "DOM Pointer Events API",
|
|||
|
|
"property": "pointerevents",
|
|||
|
|
"caniuse": "pointer",
|
|||
|
|
"tags": ["input"],
|
|||
|
|
"authors": ["Stu Cox"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec (Pointer Events)",
|
|||
|
|
"href": "https://www.w3.org/TR/pointerevents/"
|
|||
|
|
}, {
|
|||
|
|
"name": "W3C Spec (Pointer Events Level 2)",
|
|||
|
|
"href": "https://www.w3.org/TR/pointerevents2/"
|
|||
|
|
}, {
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/PointerEvent"
|
|||
|
|
}],
|
|||
|
|
"warnings": ["This property name now refers to W3C DOM PointerEvents: https://github.com/Modernizr/Modernizr/issues/548#issuecomment-12812099"],
|
|||
|
|
"polyfills": ["pep"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Proximity API",
|
|||
|
|
"property": "proximity",
|
|||
|
|
"authors": ["Cătălin Mariș"],
|
|||
|
|
"tags": ["events", "proximity"],
|
|||
|
|
"caniuse": "proximity",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/Proximity_Events"
|
|||
|
|
}, {
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/proximity/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "File API",
|
|||
|
|
"property": "filereader",
|
|||
|
|
"caniuse": "fileapi",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Working Draft Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/FileAPI/"
|
|||
|
|
}],
|
|||
|
|
"tags": ["file"],
|
|||
|
|
"builderAliases": ["file_api"],
|
|||
|
|
"knownBugs": ["Will fail in Safari 5 due to its lack of support for the standards defined FileReader object"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Filesystem API",
|
|||
|
|
"property": "filesystem",
|
|||
|
|
"caniuse": "filesystem",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/file-system-api/"
|
|||
|
|
}],
|
|||
|
|
"authors": ["Eric Bidelman (@ebidel)"],
|
|||
|
|
"tags": ["file"],
|
|||
|
|
"builderAliases": ["file_filesystem"],
|
|||
|
|
"knownBugs": ["The API will be present in Chrome incognito, but will throw an exception. See crbug.com/93417"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Flash",
|
|||
|
|
"property": "flash",
|
|||
|
|
"tags": ["flash"],
|
|||
|
|
"polyfills": ["shumway"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Fullscreen API",
|
|||
|
|
"property": "fullscreen",
|
|||
|
|
"caniuse": "fullscreen",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en/API/Fullscreen"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["screenfulljs"],
|
|||
|
|
"builderAliases": ["fullscreen_api"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "GamePad API",
|
|||
|
|
"property": "gamepads",
|
|||
|
|
"caniuse": "gamepad",
|
|||
|
|
"authors": ["Eric Bidelman"],
|
|||
|
|
"tags": ["media"],
|
|||
|
|
"warnings": ["In new browsers it may return false in non-HTTPS connections"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/gamepad/"
|
|||
|
|
}, {
|
|||
|
|
"name": "HTML5 Rocks Tutorial",
|
|||
|
|
"href": "https://www.html5rocks.com/en/tutorials/doodles/gamepad/#toc-featuredetect"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Geolocation API",
|
|||
|
|
"property": "geolocation",
|
|||
|
|
"caniuse": "geolocation",
|
|||
|
|
"tags": ["media"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/WebAPI/Using_geolocation"
|
|||
|
|
}],
|
|||
|
|
"polyfills": [
|
|||
|
|
"joshuabell-polyfill",
|
|||
|
|
"webshims",
|
|||
|
|
"geo-location-javascript",
|
|||
|
|
"geolocation-api-polyfill"
|
|||
|
|
]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Hidden Scrollbar",
|
|||
|
|
"property": "hiddenscroll",
|
|||
|
|
"authors": ["Oleg Korsunsky"],
|
|||
|
|
"tags": ["overlay"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Overlay Scrollbar description",
|
|||
|
|
"href": "https://developer.apple.com/library/mac/releasenotes/MacOSX/WhatsNewInOSX/Articles/MacOSX10_7.html#//apple_ref/doc/uid/TP40010355-SW39"
|
|||
|
|
}, {
|
|||
|
|
"name": "Video example of overlay scrollbars",
|
|||
|
|
"href": "https://gfycat.com/FoolishMeaslyAtlanticsharpnosepuffer"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "History API",
|
|||
|
|
"property": "history",
|
|||
|
|
"caniuse": "history",
|
|||
|
|
"tags": ["history"],
|
|||
|
|
"authors": ["Hay Kranen", "Alexander Farkas"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/html51/browsers.html#the-history-interface"
|
|||
|
|
}, {
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/window.history"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["historyjs", "html5historyapi"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "HTML Imports",
|
|||
|
|
"property": "htmlimports",
|
|||
|
|
"tags": ["html", "import"],
|
|||
|
|
"polyfills": ["polymer-htmlimports"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://w3c.github.io/webcomponents/spec/imports/"
|
|||
|
|
}, {
|
|||
|
|
"name": "HTML Imports - #include for the web",
|
|||
|
|
"href": "https://www.html5rocks.com/en/tutorials/webcomponents/imports/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "IE8 compat mode",
|
|||
|
|
"property": "ie8compat",
|
|||
|
|
"authors": ["Erich Ocean"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "iframe[sandbox] Attribute",
|
|||
|
|
"property": "sandbox",
|
|||
|
|
"caniuse": "iframe-sandbox",
|
|||
|
|
"tags": ["iframe"],
|
|||
|
|
"builderAliases": ["iframe_sandbox"],
|
|||
|
|
"notes": [
|
|||
|
|
{
|
|||
|
|
"name": "WHATWG Spec",
|
|||
|
|
"href": "https://html.spec.whatwg.org/multipage/embedded-content.html#attr-iframe-sandbox"
|
|||
|
|
}],
|
|||
|
|
"knownBugs": ["False-positive on Firefox < 29"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "iframe[seamless] Attribute",
|
|||
|
|
"property": "seamless",
|
|||
|
|
"tags": ["iframe"],
|
|||
|
|
"builderAliases": ["iframe_seamless"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WHATWG Spec",
|
|||
|
|
"href": "https://html.spec.whatwg.org/multipage/embedded-content.html#attr-iframe-seamless"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "iframe[srcdoc] Attribute",
|
|||
|
|
"property": "srcdoc",
|
|||
|
|
"caniuse": "iframe-srcdoc",
|
|||
|
|
"tags": ["iframe"],
|
|||
|
|
"builderAliases": ["iframe_srcdoc"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WHATWG Spec",
|
|||
|
|
"href": "https://html.spec.whatwg.org/multipage/embedded-content.html#attr-iframe-srcdoc"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Animated PNG",
|
|||
|
|
"async": true,
|
|||
|
|
"property": "apng",
|
|||
|
|
"caniuse": "apng",
|
|||
|
|
"tags": ["image"],
|
|||
|
|
"builderAliases": ["img_apng"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Wikipedia Article",
|
|||
|
|
"href": "https://en.wikipedia.org/wiki/APNG"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "AVIF",
|
|||
|
|
"async": true,
|
|||
|
|
"property": "avif",
|
|||
|
|
"caniuse": "avif",
|
|||
|
|
"tags": ["image"],
|
|||
|
|
"authors": ["Markel Ferro (@MarkelFe)"],
|
|||
|
|
"polyfills": ["avifjs"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Avif Spec",
|
|||
|
|
"href": "https://aomediacodec.github.io/av1-avif/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Image crossOrigin",
|
|||
|
|
"property": "imgcrossorigin",
|
|||
|
|
"tags": ["image"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Cross Domain Images and the Tainted Canvas",
|
|||
|
|
"href": "https://blog.codepen.io/2013/10/08/cross-domain-images-tainted-canvas/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "EXIF Orientation",
|
|||
|
|
"property": "exiforientation",
|
|||
|
|
"tags": ["image"],
|
|||
|
|
"builderAliases": ["exif_orientation"],
|
|||
|
|
"async": true,
|
|||
|
|
"authors": ["Paul Sayre"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Article by Dave Perrett",
|
|||
|
|
"href": "https://www.daveperrett.com/articles/2012/07/28/exif-orientation-handling-is-a-ghetto/"
|
|||
|
|
}, {
|
|||
|
|
"name": "Article by Calvin Hass",
|
|||
|
|
"href": "https://www.impulseadventure.com/photo/exif-orientation.html"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "JPEG 2000",
|
|||
|
|
"async": true,
|
|||
|
|
"aliases": ["jpeg-2000", "jpg2"],
|
|||
|
|
"property": "jpeg2000",
|
|||
|
|
"caniuse": "jpeg2000",
|
|||
|
|
"tags": ["image"],
|
|||
|
|
"authors": ["@eric_wvgg"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Wikipedia Article",
|
|||
|
|
"href": "https://en.wikipedia.org/wiki/JPEG_2000"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "JPEG XR (extended range)",
|
|||
|
|
"async": true,
|
|||
|
|
"aliases": ["jpeg-xr"],
|
|||
|
|
"property": "jpegxr",
|
|||
|
|
"tags": ["image"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Wikipedia Article",
|
|||
|
|
"href": "https://en.wikipedia.org/wiki/JPEG_XR"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "image and iframe native lazy loading",
|
|||
|
|
"property": "lazyloading",
|
|||
|
|
"caniuse": "loading-lazy-attr",
|
|||
|
|
"tags": ["image", "lazy", "loading"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Native image lazy-loading for the web",
|
|||
|
|
"href": "https://addyosmani.com/blog/lazy-loading/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "sizes attribute",
|
|||
|
|
"async": true,
|
|||
|
|
"property": "sizes",
|
|||
|
|
"tags": ["image"],
|
|||
|
|
"authors": ["Mat Marquis"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WHATWG Spec",
|
|||
|
|
"href": "https://html.spec.whatwg.org/multipage/embedded-content.html#the-img-element"
|
|||
|
|
}, {
|
|||
|
|
"name": "Srcset and sizes",
|
|||
|
|
"href": "https://ericportis.com/posts/2014/srcset-sizes/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "srcset attribute",
|
|||
|
|
"property": "srcset",
|
|||
|
|
"caniuse": "srcset",
|
|||
|
|
"tags": ["image"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Smashing Magazine Article",
|
|||
|
|
"href": "https://www.smashingmagazine.com/2013/08/webkit-implements-srcset-and-why-its-a-good-thing/"
|
|||
|
|
}, {
|
|||
|
|
"name": "Generate multi-resolution images for srcset with Grunt",
|
|||
|
|
"href": "https://addyosmani.com/blog/generate-multi-resolution-images-for-srcset-with-grunt/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Webp Alpha",
|
|||
|
|
"async": true,
|
|||
|
|
"property": "webpalpha",
|
|||
|
|
"aliases": ["webp-alpha"],
|
|||
|
|
"tags": ["image"],
|
|||
|
|
"authors": ["Krister Kari", "Rich Bradshaw", "Ryan Seddon", "Paul Irish"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WebP Info",
|
|||
|
|
"href": "https://developers.google.com/speed/webp/"
|
|||
|
|
}, {
|
|||
|
|
"name": "Article about WebP support",
|
|||
|
|
"href": "https://optimus.keycdn.com/support/webp-support/"
|
|||
|
|
}, {
|
|||
|
|
"name": "Chromium WebP announcement",
|
|||
|
|
"href": "https://blog.chromium.org/2011/11/lossless-and-transparency-encoding-in.html?m=1"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Webp Animation",
|
|||
|
|
"async": true,
|
|||
|
|
"property": "webpanimation",
|
|||
|
|
"aliases": ["webp-animation"],
|
|||
|
|
"tags": ["image"],
|
|||
|
|
"authors": ["Krister Kari", "Rich Bradshaw", "Ryan Seddon", "Paul Irish"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WebP Info",
|
|||
|
|
"href": "https://developers.google.com/speed/webp/"
|
|||
|
|
}, {
|
|||
|
|
"name": "Chromium blog - Chrome 32 Beta: Animated WebP images and faster Chrome for Android touch input",
|
|||
|
|
"href": "https://blog.chromium.org/2013/11/chrome-32-beta-animated-webp-images-and.html"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Webp Lossless",
|
|||
|
|
"async": true,
|
|||
|
|
"property": ["webplossless", "webp-lossless"],
|
|||
|
|
"tags": ["image"],
|
|||
|
|
"authors": ["@amandeep", "Rich Bradshaw", "Ryan Seddon", "Paul Irish"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Webp Info",
|
|||
|
|
"href": "https://developers.google.com/speed/webp/"
|
|||
|
|
}, {
|
|||
|
|
"name": "Webp Lossless Spec",
|
|||
|
|
"href": "https://developers.google.com/speed/webp/docs/webp_lossless_bitstream_specification"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Webp",
|
|||
|
|
"async": true,
|
|||
|
|
"property": "webp",
|
|||
|
|
"caniuse": "webp",
|
|||
|
|
"tags": ["image"],
|
|||
|
|
"builderAliases": ["img_webp"],
|
|||
|
|
"authors": ["Krister Kari", "@amandeep", "Rich Bradshaw", "Ryan Seddon", "Paul Irish"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Webp Info",
|
|||
|
|
"href": "https://developers.google.com/speed/webp/"
|
|||
|
|
}, {
|
|||
|
|
"name": "Chromium blog - Chrome 32 Beta: Animated WebP images and faster Chrome for Android touch input",
|
|||
|
|
"href": "https://blog.chromium.org/2013/11/chrome-32-beta-animated-webp-images-and.html"
|
|||
|
|
}, {
|
|||
|
|
"name": "Webp Lossless Spec",
|
|||
|
|
"href": "https://developers.google.com/speed/webp/docs/webp_lossless_bitstream_specification"
|
|||
|
|
}, {
|
|||
|
|
"name": "Article about WebP support",
|
|||
|
|
"href": "https://optimus.keycdn.com/support/webp-support/"
|
|||
|
|
}, {
|
|||
|
|
"name": "Chromium WebP announcement",
|
|||
|
|
"href": "https://blog.chromium.org/2011/11/lossless-and-transparency-encoding-in.html?m=1"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "input[capture] Attribute",
|
|||
|
|
"property": "capture",
|
|||
|
|
"tags": ["video", "image", "audio", "media", "attribute"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Draft Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/html-media-capture/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "input[file] Attribute",
|
|||
|
|
"property": "fileinput",
|
|||
|
|
"caniuse": "forms",
|
|||
|
|
"tags": ["file", "forms", "input"],
|
|||
|
|
"builderAliases": ["forms_fileinput"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "input[directory] Attribute",
|
|||
|
|
"property": "directory",
|
|||
|
|
"authors": ["silverwind"],
|
|||
|
|
"tags": ["file", "input", "attribute"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "input formaction",
|
|||
|
|
"property": "inputformaction",
|
|||
|
|
"aliases": ["input-formaction"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WHATWG Spec",
|
|||
|
|
"href": "https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#attr-fs-formaction"
|
|||
|
|
}, {
|
|||
|
|
"name": "Wufoo demo",
|
|||
|
|
"href": "https://www.wufoo.com/html5/formaction-attribute/"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["webshims"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "input[form] Attribute",
|
|||
|
|
"property": "formattribute",
|
|||
|
|
"tags": ["attribute", "forms", "input"],
|
|||
|
|
"builderAliases": ["forms_formattribute"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "input formenctype",
|
|||
|
|
"property": "inputformenctype",
|
|||
|
|
"aliases": ["input-formenctype"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WHATWG Spec",
|
|||
|
|
"href": "https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#attr-fs-formenctype"
|
|||
|
|
}, {
|
|||
|
|
"name": "Wufoo demo",
|
|||
|
|
"href": "https://www.wufoo.com/html5/formenctype-attribute/"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["html5formshim"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "input formmethod",
|
|||
|
|
"property": "inputformmethod",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WHATWG Spec",
|
|||
|
|
"href": "https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#attr-fs-formmethod"
|
|||
|
|
}, {
|
|||
|
|
"name": "Wufoo demo",
|
|||
|
|
"href": "https://www.wufoo.com/html5/formmethod-attribute/"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["webshims"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "input formnovalidate",
|
|||
|
|
"property": "inputformnovalidate",
|
|||
|
|
"aliases": ["input-formnovalidate"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WHATWG Spec",
|
|||
|
|
"href": "https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#attr-fs-formnovalidate"
|
|||
|
|
}, {
|
|||
|
|
"name": "Wufoo demo",
|
|||
|
|
"href": "https://www.wufoo.com/html5/formnovalidate-attribute/"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["html5formshim"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "input formtarget",
|
|||
|
|
"property": "inputformtarget",
|
|||
|
|
"aliases": ["input-formtarget"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WHATWG Spec",
|
|||
|
|
"href": "https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#attr-fs-formtarget"
|
|||
|
|
}, {
|
|||
|
|
"name": "Wufoo demo",
|
|||
|
|
"href": "https://www.wufoo.com/html5/formtarget-attribute/"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["html5formshim"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Input attributes",
|
|||
|
|
"property": "input",
|
|||
|
|
"tags": ["forms"],
|
|||
|
|
"authors": ["Mike Taylor"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WHATWG Spec",
|
|||
|
|
"href": "https://html.spec.whatwg.org/multipage/input.html#input-type-attr-summary"
|
|||
|
|
}],
|
|||
|
|
"knownBugs": ["Some blackberry devices report false positive for input.multiple"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Form input types",
|
|||
|
|
"property": "inputtypes",
|
|||
|
|
"caniuse": "forms",
|
|||
|
|
"tags": ["forms"],
|
|||
|
|
"authors": ["Mike Taylor"],
|
|||
|
|
"polyfills": [
|
|||
|
|
"jquerytools",
|
|||
|
|
"webshims",
|
|||
|
|
"h5f",
|
|||
|
|
"webforms2",
|
|||
|
|
"nwxforms",
|
|||
|
|
"fdslider",
|
|||
|
|
"html5slider",
|
|||
|
|
"galleryhtml5forms",
|
|||
|
|
"jscolor",
|
|||
|
|
"html5formshim",
|
|||
|
|
"selectedoptionsjs",
|
|||
|
|
"formvalidationjs"
|
|||
|
|
]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Form Validation",
|
|||
|
|
"property": "formvalidation",
|
|||
|
|
"tags": ["forms", "validation", "attribute"],
|
|||
|
|
"builderAliases": ["forms_validation"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "input[type=\"number\"] Localization",
|
|||
|
|
"property": "localizednumber",
|
|||
|
|
"tags": ["forms", "localization", "attribute"],
|
|||
|
|
"authors": ["Peter Janes"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Webkit Bug Tracker Listing",
|
|||
|
|
"href": "https://bugs.webkit.org/show_bug.cgi?id=42484"
|
|||
|
|
}, {
|
|||
|
|
"name": "Based on This",
|
|||
|
|
"href": "https://trac.webkit.org/browser/trunk/LayoutTests/fast/forms/script-tests/input-number-keyoperation.js?rev=80096#L9"
|
|||
|
|
}],
|
|||
|
|
"knownBugs": ["Only ever returns true if the browser/OS is configured to use comma as a decimal separator. This is probably fine for most use cases."]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "input[search] search event",
|
|||
|
|
"property": "inputsearchevent",
|
|||
|
|
"tags": ["input","search"],
|
|||
|
|
"authors": ["Calvin Webster"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Wufoo demo",
|
|||
|
|
"href": "https://www.wufoo.com/html5/search-type/"
|
|||
|
|
}, {
|
|||
|
|
"name": "CSS Tricks",
|
|||
|
|
"href": "https://css-tricks.com/webkit-html5-search-inputs/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "placeholder attribute",
|
|||
|
|
"property": "placeholder",
|
|||
|
|
"tags": ["forms", "attribute"],
|
|||
|
|
"builderAliases": ["forms_placeholder"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "form#requestAutocomplete()",
|
|||
|
|
"property": "requestautocomplete",
|
|||
|
|
"tags": ["form", "forms", "requestAutocomplete", "payments"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WHATWG Spec",
|
|||
|
|
"href": "https://wiki.whatwg.org/wiki/RequestAutocomplete"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Internationalization API",
|
|||
|
|
"property": "intl",
|
|||
|
|
"caniuse": "internationalization",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl"
|
|||
|
|
}, {
|
|||
|
|
"name": "ECMAScript spec",
|
|||
|
|
"href": "https://www.ecma-international.org/ecma-402/1.0/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Font Ligatures",
|
|||
|
|
"property": "ligatures",
|
|||
|
|
"caniuse": "font-feature",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Cross-browser Web Fonts",
|
|||
|
|
"href": "https://www.sitepoint.com/cross-browser-web-fonts-part-3/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Reverse Ordered Lists",
|
|||
|
|
"property": "olreversed",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Impressive Webs article",
|
|||
|
|
"href": "https://www.impressivewebs.com/reverse-ordered-lists-html5/"
|
|||
|
|
}],
|
|||
|
|
"builderAliases": ["lists_reversed"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "MathML",
|
|||
|
|
"property": "mathml",
|
|||
|
|
"caniuse": "mathml",
|
|||
|
|
"authors": ["Addy Osmani", "Davide P. Cervone", "David Carlisle"],
|
|||
|
|
"knownBugs": ["Firefox < 4 will likely return a false, however it does support MathML inside XHTML documents"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/Math/"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["mathjax"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Media Source Extensions API",
|
|||
|
|
"caniuse": "mediasource",
|
|||
|
|
"property": "mediasource",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/Media_Source_Extensions_API"
|
|||
|
|
}],
|
|||
|
|
"builderAliases": ["media_source_extension_api"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Hover Media Query",
|
|||
|
|
"property": "hovermq",
|
|||
|
|
"tags": ["mediaquery"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Pointer Media Query",
|
|||
|
|
"property": "pointermq",
|
|||
|
|
"tags": ["mediaquery"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Message Channel",
|
|||
|
|
"property": "messagechannel",
|
|||
|
|
"authors": ["Raju Konga (@kongaraju)"],
|
|||
|
|
"caniuse": "channel-messaging",
|
|||
|
|
"tags": ["performance", "messagechannel"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/2011/WD-webmessaging-20110317/#message-channels"
|
|||
|
|
}, {
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/Channel_Messaging_API/Using_channel_messaging"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Beacon API",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/navigator.sendBeacon"
|
|||
|
|
}, {
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://w3c.github.io/beacon/"
|
|||
|
|
}],
|
|||
|
|
"property": "beacon",
|
|||
|
|
"caniuse": "beacon",
|
|||
|
|
"tags": ["beacon", "network"],
|
|||
|
|
"authors": ["Cătălin Mariș"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Connection Effective Type",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN documentation",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/NetworkInformation/effectiveType"
|
|||
|
|
}],
|
|||
|
|
"property": "connectioneffectivetype",
|
|||
|
|
"builderAliases": ["network_connection"],
|
|||
|
|
"tags": ["network"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Low Bandwidth Connection",
|
|||
|
|
"property": "lowbandwidth",
|
|||
|
|
"tags": ["network"],
|
|||
|
|
"builderAliases": ["network_connection"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Server Sent Events",
|
|||
|
|
"property": "eventsource",
|
|||
|
|
"tags": ["network"],
|
|||
|
|
"builderAliases": ["network_eventsource"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WHATWG Spec",
|
|||
|
|
"href": "https://html.spec.whatwg.org/multipage/server-sent-events.html#server-sent-events"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Fetch API",
|
|||
|
|
"property": "fetch",
|
|||
|
|
"tags": ["network"],
|
|||
|
|
"caniuse": "fetch",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WHATWG Spec",
|
|||
|
|
"href": "https://fetch.spec.whatwg.org/"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["fetch"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "XHR responseType='arraybuffer'",
|
|||
|
|
"property": "xhrresponsetypearraybuffer",
|
|||
|
|
"tags": ["network"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WHATWG Spec",
|
|||
|
|
"href": "https://xhr.spec.whatwg.org/#the-responsetype-attribute"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "XHR responseType='blob'",
|
|||
|
|
"property": "xhrresponsetypeblob",
|
|||
|
|
"tags": ["network"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WHATWG Spec",
|
|||
|
|
"href": "https://xhr.spec.whatwg.org/#the-responsetype-attribute"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "XHR responseType='document'",
|
|||
|
|
"property": "xhrresponsetypedocument",
|
|||
|
|
"tags": ["network"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WHATWG Spec",
|
|||
|
|
"href": "https://xhr.spec.whatwg.org/#the-responsetype-attribute"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "XHR responseType='json'",
|
|||
|
|
"property": "xhrresponsetypejson",
|
|||
|
|
"tags": ["network"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WHATWG Spec",
|
|||
|
|
"href": "https://xhr.spec.whatwg.org/#the-responsetype-attribute"
|
|||
|
|
}, {
|
|||
|
|
"name": "Explanation of xhr.responseType='json'",
|
|||
|
|
"href": "https://mathiasbynens.be/notes/xhr-responsetype-json"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "XHR responseType='text'",
|
|||
|
|
"property": "xhrresponsetypetext",
|
|||
|
|
"tags": ["network"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WHATWG Spec",
|
|||
|
|
"href": "https://xhr.spec.whatwg.org/#the-responsetype-attribute"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "XHR responseType",
|
|||
|
|
"property": "xhrresponsetype",
|
|||
|
|
"tags": ["network"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WHATWG Spec",
|
|||
|
|
"href": "https://xhr.spec.whatwg.org/#the-responsetype-attribute"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "XML HTTP Request Level 2 XHR2",
|
|||
|
|
"property": "xhr2",
|
|||
|
|
"caniuse": "xhr2",
|
|||
|
|
"tags": ["network"],
|
|||
|
|
"builderAliases": ["network_xhr2"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/XMLHttpRequest2/"
|
|||
|
|
}, {
|
|||
|
|
"name": "Details on Related Github Issue",
|
|||
|
|
"href": "https://github.com/Modernizr/Modernizr/issues/385"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Notification",
|
|||
|
|
"property": "notification",
|
|||
|
|
"caniuse": "notifications",
|
|||
|
|
"authors": ["Theodoor van Donge", "Hendrik Beskow"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "HTML5 Rocks Tutorial",
|
|||
|
|
"href": "https://www.html5rocks.com/en/tutorials/notifications/quick/"
|
|||
|
|
}, {
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/notifications/"
|
|||
|
|
}, {
|
|||
|
|
"name": "Changes in Chrome to Notifications API due to Service Worker Push Notifications",
|
|||
|
|
"href": "https://developers.google.com/web/updates/2015/05/Notifying-you-of-notificiation-changes"
|
|||
|
|
}],
|
|||
|
|
"knownBugs": ["Possibility of false-positive on Chrome for Android if permissions we're granted for a website prior to Chrome 44."],
|
|||
|
|
"polyfills": ["desktop-notify", "html5-notifications"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Page Visibility API",
|
|||
|
|
"property": "pagevisibility",
|
|||
|
|
"caniuse": "pagevisibility",
|
|||
|
|
"tags": ["performance"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/DOM/Using_the_Page_Visibility_API"
|
|||
|
|
}, {
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/2011/WD-page-visibility-20110602/"
|
|||
|
|
}, {
|
|||
|
|
"name": "HTML5 Rocks Tutorial",
|
|||
|
|
"href": "https://www.html5rocks.com/en/tutorials/pagevisibility/intro/"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["visibilityjs", "visiblyjs", "jquery-visibility"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Navigation Timing API",
|
|||
|
|
"property": "performance",
|
|||
|
|
"caniuse": "nav-timing",
|
|||
|
|
"tags": ["performance"],
|
|||
|
|
"authors": ["Scott Murphy (@uxder)"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/navigation-timing/"
|
|||
|
|
}, {
|
|||
|
|
"name": "HTML5 Rocks Tutorial",
|
|||
|
|
"href": "https://www.html5rocks.com/en/tutorials/webperformance/basics/"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["perfnow"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Pointer Lock API",
|
|||
|
|
"property": "pointerlock",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/API/Pointer_Lock_API"
|
|||
|
|
}],
|
|||
|
|
"builderAliases": ["pointerlock_api"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "postMessage",
|
|||
|
|
"property": "postmessage",
|
|||
|
|
"caniuse": "x-doc-messaging",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/webmessaging/#crossDocumentMessages"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["easyxdm", "postmessage-jquery"],
|
|||
|
|
"knownBugs": [
|
|||
|
|
"structuredclones - Android 2&3 can not send a structured clone of dates, filelists or regexps.",
|
|||
|
|
"Some old WebKit versions have bugs."
|
|||
|
|
],
|
|||
|
|
"warnings": ["To be safe you should stick with object, array, number and pixeldata."]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Proxy Object",
|
|||
|
|
"property": "proxy",
|
|||
|
|
"caniuse": "proxy",
|
|||
|
|
"authors": ["Brock Beaudry"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy"
|
|||
|
|
}],
|
|||
|
|
"polyfills": [
|
|||
|
|
"harmony-reflect"
|
|||
|
|
]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "QuerySelector",
|
|||
|
|
"property": "queryselector",
|
|||
|
|
"caniuse": "queryselector",
|
|||
|
|
"tags": ["queryselector"],
|
|||
|
|
"authors": ["Andrew Betts (@triblondon)"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/selectors-api/#queryselectorall"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["css-selector-engine"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "rel=prefetch",
|
|||
|
|
"property": "prefetch",
|
|||
|
|
"caniuse": "link-rel-prefetch",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/resource-hints/#prefetch"
|
|||
|
|
}, {
|
|||
|
|
"name": "Related Github Issue",
|
|||
|
|
"href": "https://github.com/Modernizr/Modernizr/issues/2536"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "requestAnimationFrame",
|
|||
|
|
"property": "requestanimationframe",
|
|||
|
|
"aliases": ["raf"],
|
|||
|
|
"caniuse": "requestanimationframe",
|
|||
|
|
"tags": ["animation"],
|
|||
|
|
"authors": ["Addy Osmani"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/animation-timing/"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["raf"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "script[async]",
|
|||
|
|
"property": "scriptasync",
|
|||
|
|
"caniuse": "script-async",
|
|||
|
|
"tags": ["script"],
|
|||
|
|
"builderAliases": ["script_async"],
|
|||
|
|
"authors": ["Theodoor van Donge"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "script[defer]",
|
|||
|
|
"property": "scriptdefer",
|
|||
|
|
"caniuse": "script-defer",
|
|||
|
|
"tags": ["script"],
|
|||
|
|
"builderAliases": ["script_defer"],
|
|||
|
|
"authors": ["Theodoor van Donge"],
|
|||
|
|
"warnings": ["Browser implementation of the `defer` attribute vary: https://stackoverflow.com/questions/3952009/defer-attribute-chrome#answer-3982619"],
|
|||
|
|
"knownBugs": ["False positive in Opera 12"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "scrollToOptions dictionary",
|
|||
|
|
"property": "scrolltooptions",
|
|||
|
|
"caniuse": "mdn-api_scrolltooptions",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/Window/scrollTo"
|
|||
|
|
}],
|
|||
|
|
"authors": ["Oliver Tušla (@asmarcz)", "Chris Smith (@chris13524)"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "ServiceWorker API",
|
|||
|
|
"property": "serviceworker",
|
|||
|
|
"caniuse": "serviceworkers",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "ServiceWorkers Explained",
|
|||
|
|
"href": "https://github.com/slightlyoff/ServiceWorker/blob/master/explainer.md"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"property": "speechrecognition",
|
|||
|
|
"caniuse": "speech-recognition",
|
|||
|
|
"tags": ["input", "speech"],
|
|||
|
|
"authors": ["Cătălin Mariș"],
|
|||
|
|
"name": "Speech Recognition API",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://w3c.github.io/speech-api/speechapi.html#speechreco-section"
|
|||
|
|
}, {
|
|||
|
|
"name": "Introduction to the Web Speech API",
|
|||
|
|
"href": "https://developers.google.com/web/updates/2013/01/Voice-Driven-Web-Apps-Introduction-to-the-Web-Speech-API"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"property": "speechsynthesis",
|
|||
|
|
"caniuse": "speech-synthesis",
|
|||
|
|
"tags": ["input", "speech"],
|
|||
|
|
"authors": ["Cătălin Mariș"],
|
|||
|
|
"name": "Speech Synthesis API",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://w3c.github.io/speech-api/speechapi.html#tts-section"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Cookies",
|
|||
|
|
"property": "cookies",
|
|||
|
|
"tags": ["storage"],
|
|||
|
|
"authors": ["tauren"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "IndexedDB",
|
|||
|
|
"property": "indexeddb",
|
|||
|
|
"caniuse": "indexeddb",
|
|||
|
|
"tags": ["storage"],
|
|||
|
|
"polyfills": ["indexeddb"],
|
|||
|
|
"async": true
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "IndexedDB Blob",
|
|||
|
|
"property": "indexeddbblob",
|
|||
|
|
"tags": ["storage"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "IndexedDB 2.0",
|
|||
|
|
"property": "indexeddb2",
|
|||
|
|
"tags": ["storage"],
|
|||
|
|
"caniuse": "indexeddb2",
|
|||
|
|
"authors": ["Tan Zhen Yong (@Xenonym)"],
|
|||
|
|
"polyfills": ["indexeddb"],
|
|||
|
|
"async": true
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Local Storage",
|
|||
|
|
"property": "localstorage",
|
|||
|
|
"caniuse": "namevalue-storage",
|
|||
|
|
"tags": ["storage"],
|
|||
|
|
"polyfills": [
|
|||
|
|
"joshuabell-polyfill",
|
|||
|
|
"cupcake",
|
|||
|
|
"storagepolyfill",
|
|||
|
|
"amplifyjs",
|
|||
|
|
"yui-cacheoffline"
|
|||
|
|
]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Quota Storage Management API",
|
|||
|
|
"property": "quotamanagement",
|
|||
|
|
"tags": ["storage"],
|
|||
|
|
"builderAliases": ["quota_management_api"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/quota-api/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Session Storage",
|
|||
|
|
"property": "sessionstorage",
|
|||
|
|
"tags": ["storage"],
|
|||
|
|
"polyfills": ["joshuabell-polyfill", "cupcake", "storagepolyfill"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "IE User Data API",
|
|||
|
|
"property": "userdata",
|
|||
|
|
"tags": ["storage"],
|
|||
|
|
"authors": ["@stereobooster"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MSDN Documentation",
|
|||
|
|
"href": "https://msdn.microsoft.com/en-us/library/ms531424.aspx"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Web SQL Database",
|
|||
|
|
"property": "websqldatabase",
|
|||
|
|
"caniuse": "sql-storage",
|
|||
|
|
"tags": ["storage"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "style[scoped]",
|
|||
|
|
"property": "stylescoped",
|
|||
|
|
"caniuse": "style-scoped",
|
|||
|
|
"tags": ["dom"],
|
|||
|
|
"builderAliases": ["style_scoped"],
|
|||
|
|
"authors": ["Cătălin Mariș"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WHATWG Spec",
|
|||
|
|
"href": "https://html.spec.whatwg.org/multipage/semantics.html#attr-style-scoped"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["scoped-styles"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "SVG",
|
|||
|
|
"property": "svg",
|
|||
|
|
"caniuse": "svg",
|
|||
|
|
"tags": ["svg"],
|
|||
|
|
"authors": ["Erik Dahlstrom"],
|
|||
|
|
"polyfills": [
|
|||
|
|
"svgweb",
|
|||
|
|
"raphael",
|
|||
|
|
"canvg",
|
|||
|
|
"svg-boilerplate",
|
|||
|
|
"sie",
|
|||
|
|
"fabricjs"
|
|||
|
|
]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "SVG as an <img> tag source",
|
|||
|
|
"property": "svgasimg",
|
|||
|
|
"caniuse": "svg-img",
|
|||
|
|
"tags": ["svg"],
|
|||
|
|
"aliases": ["svgincss"],
|
|||
|
|
"authors": ["Chris Coyier"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "HTML5 Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/html5/embedded-content-0.html#the-img-element"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "SVG clip paths",
|
|||
|
|
"property": "svgclippaths",
|
|||
|
|
"tags": ["svg"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Demo",
|
|||
|
|
"href": "http://srufaculty.sru.edu/david.dailey/svg/newstuff/clipPath4.svg"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "SVG filters",
|
|||
|
|
"property": "svgfilters",
|
|||
|
|
"caniuse": "svg-filters",
|
|||
|
|
"tags": ["svg"],
|
|||
|
|
"builderAliases": ["svg_filters"],
|
|||
|
|
"authors": ["Erik Dahlstrom"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/SVG11/filters.html"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "SVG foreignObject",
|
|||
|
|
"property": "svgforeignobject",
|
|||
|
|
"tags": ["svg"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/SVG11/extend.html"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Inline SVG",
|
|||
|
|
"property": "inlinesvg",
|
|||
|
|
"caniuse": "svg-html5",
|
|||
|
|
"tags": ["svg"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Test page",
|
|||
|
|
"href": "https://paulirish.com/demo/inline-svg"
|
|||
|
|
}, {
|
|||
|
|
"name": "Test page and results",
|
|||
|
|
"href": "https://codepen.io/eltonmesquita/full/GgXbvo/"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["inline-svg-polyfill"],
|
|||
|
|
"knownBugs": ["False negative on some Chromia browsers."]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "SVG SMIL animation",
|
|||
|
|
"property": "smil",
|
|||
|
|
"caniuse": "svg-smil",
|
|||
|
|
"tags": ["svg"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/AudioVideo/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "textarea maxlength",
|
|||
|
|
"property": "textareamaxlength",
|
|||
|
|
"aliases": ["textarea-maxlength"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/HTML/Element/textarea"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["maxlength"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Text Encoding/Decoding",
|
|||
|
|
"property": ["textencoder", "textdecoder"],
|
|||
|
|
"caniuse" : "textencoder",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN TextEncoder Doc",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/TextEncoder"
|
|||
|
|
}, {
|
|||
|
|
"name": "MDN TextDecoder Doc",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/TextDecoder"
|
|||
|
|
}],
|
|||
|
|
"authors": ["dabretin"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Typed arrays",
|
|||
|
|
"property": "typedarrays",
|
|||
|
|
"caniuse": "typedarrays",
|
|||
|
|
"tags": ["js"],
|
|||
|
|
"authors": ["Stanley Stuart (@fivetanley)"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Typed_arrays"
|
|||
|
|
}, {
|
|||
|
|
"name": "Kronos spec",
|
|||
|
|
"href": "http://www.ecma-international.org/ecma-262/6.0/#sec-typedarray-objects"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["joshuabell-polyfill"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Unicode Range",
|
|||
|
|
"property": "unicoderange",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/2013/CR-css-fonts-3-20131003/#descdef-unicode-range"
|
|||
|
|
}, {
|
|||
|
|
"name": "24 Way article",
|
|||
|
|
"href": "https://24ways.org/2011/creating-custom-font-stacks-with-unicode-range"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Blob URLs",
|
|||
|
|
"property": "bloburls",
|
|||
|
|
"caniuse": "bloburls",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Working Draft Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/FileAPI/#creating-revoking"
|
|||
|
|
}],
|
|||
|
|
"tags": ["file", "url"],
|
|||
|
|
"authors": ["Ron Waldon (@jokeyrhyme)"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Data URI",
|
|||
|
|
"property": "datauri",
|
|||
|
|
"caniuse": "datauri",
|
|||
|
|
"tags": ["url"],
|
|||
|
|
"builderAliases": ["url_data_uri"],
|
|||
|
|
"async": true,
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Wikipedia article",
|
|||
|
|
"href": "https://en.wikipedia.org/wiki/Data_URI_scheme"
|
|||
|
|
}],
|
|||
|
|
"warnings": ["Support in Internet Explorer 8 is limited to images and linked resources like CSS files, not HTML files"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "URL parser",
|
|||
|
|
"property": "urlparser",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WHATWG Spec",
|
|||
|
|
"href": "https://url.spec.whatwg.org/"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["urlparser"],
|
|||
|
|
"authors": ["Ron Waldon (@jokeyrhyme)"],
|
|||
|
|
"tags": ["url"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"property": "urlsearchparams",
|
|||
|
|
"caniuse": "urlsearchparams",
|
|||
|
|
"tags": ["querystring", "url"],
|
|||
|
|
"authors": ["Cătălin Mariș"],
|
|||
|
|
"name": "URLSearchParams API",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WHATWG Spec",
|
|||
|
|
"href": "https://url.spec.whatwg.org/#interface-urlsearchparams"
|
|||
|
|
}, {
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/URLSearchParams"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Vibration API",
|
|||
|
|
"property": "vibrate",
|
|||
|
|
"caniuse": "vibration",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en/DOM/window.navigator.mozVibrate"
|
|||
|
|
}, {
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/vibration/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "HTML5 Video",
|
|||
|
|
"property": "video",
|
|||
|
|
"caniuse": "video",
|
|||
|
|
"tags": ["html5", "video", "media"],
|
|||
|
|
"knownBugs": ["Without QuickTime, `Modernizr.video.h264` will be `undefined`; https://github.com/Modernizr/Modernizr/issues/546"],
|
|||
|
|
"polyfills": [
|
|||
|
|
"html5media",
|
|||
|
|
"mediaelementjs",
|
|||
|
|
"videojs",
|
|||
|
|
"leanbackplayer",
|
|||
|
|
"videoforeverybody"
|
|||
|
|
]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Video Autoplay",
|
|||
|
|
"property": "videoautoplay",
|
|||
|
|
"tags": ["video"],
|
|||
|
|
"async": true,
|
|||
|
|
"warnings": ["This test is very large – only include it if you absolutely need it"],
|
|||
|
|
"knownBugs": ["crashes with an alert on iOS7 when added to homescreen"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Video crossOrigin",
|
|||
|
|
"property": "videocrossorigin",
|
|||
|
|
"caniuse": "cors",
|
|||
|
|
"authors": ["Florian Mailliet"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_settings_attributes"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Video Loop Attribute",
|
|||
|
|
"property": "videoloop",
|
|||
|
|
"tags": ["video", "media"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Video Preload Attribute",
|
|||
|
|
"property": "videopreload",
|
|||
|
|
"tags": ["video", "media"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "VML",
|
|||
|
|
"property": "vml",
|
|||
|
|
"tags": ["vml"],
|
|||
|
|
"authors": ["Craig Andrews (@candrews)"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/NOTE-VML"
|
|||
|
|
}, {
|
|||
|
|
"name": "MSDN Documentation",
|
|||
|
|
"href": "https://docs.microsoft.com/en-us/windows/desktop/VML/msdn-online-vml-introduction"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Web Intents",
|
|||
|
|
"property": "webintents",
|
|||
|
|
"authors": ["Eric Bidelman"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Web Intents project site",
|
|||
|
|
"href": "http://www.webintents.org/"
|
|||
|
|
}],
|
|||
|
|
"builderAliases": ["web_intents"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Web Animation API",
|
|||
|
|
"property": "webanimations",
|
|||
|
|
"caniuse": "web-animation",
|
|||
|
|
"tags": ["webanimations"],
|
|||
|
|
"polyfills": ["webanimationsjs"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Introducing Web Animations",
|
|||
|
|
"href": "https://birtles.wordpress.com/2013/06/26/introducing-web-animations/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "PublicKeyCredential",
|
|||
|
|
"notes": [
|
|||
|
|
{
|
|||
|
|
"name": "MDN Documentation",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/PublicKeyCredential"
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"name": "Google Developers solution",
|
|||
|
|
"href": "https://developers.google.com/web/updates/2018/03/webauthn-credential-management#the_solution"
|
|||
|
|
}
|
|||
|
|
],
|
|||
|
|
"property": "publickeycredential",
|
|||
|
|
"tags": ["webauthn", "web authentication"],
|
|||
|
|
"authors": ["Eric Delia"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "WebGL",
|
|||
|
|
"property": "webgl",
|
|||
|
|
"caniuse": "webgl",
|
|||
|
|
"tags": ["webgl", "graphics"],
|
|||
|
|
"polyfills": ["jebgl", "cwebgl", "iewebgl"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "WebGL Extensions",
|
|||
|
|
"property": "webglextensions",
|
|||
|
|
"tags": ["webgl", "graphics"],
|
|||
|
|
"builderAliases": ["webgl_extensions"],
|
|||
|
|
"async": true,
|
|||
|
|
"authors": ["Ilmari Heikkinen"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Kronos extensions registry",
|
|||
|
|
"href": "https://www.khronos.org/registry/webgl/extensions/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "RTC Peer Connection",
|
|||
|
|
"property": "peerconnection",
|
|||
|
|
"caniuse": "rtcpeerconnection",
|
|||
|
|
"tags": ["webrtc"],
|
|||
|
|
"authors": ["Ankur Oberoi"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/webrtc/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "RTC Data Channel",
|
|||
|
|
"property": "datachannel",
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "HTML5 Rocks Tutorial",
|
|||
|
|
"href": "https://www.html5rocks.com/en/tutorials/webrtc/datachannels/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "getUserMedia",
|
|||
|
|
"property": "getusermedia",
|
|||
|
|
"caniuse": "stream",
|
|||
|
|
"tags": ["webrtc"],
|
|||
|
|
"authors": ["Eric Bidelman", "Masataka Yakura"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://w3c.github.io/mediacapture-main/#dom-mediadevices-getusermedia"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "MediaStream Recording API",
|
|||
|
|
"property": "mediarecorder",
|
|||
|
|
"caniuse": "mediarecorder",
|
|||
|
|
"tags": ["mediarecorder", "media"],
|
|||
|
|
"authors": ["Onkar Dahale"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/MediaStream_Recording_API"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "WebSockets Support",
|
|||
|
|
"property": "websockets",
|
|||
|
|
"authors": ["Phread (@fearphage)", "Mike Sherov (@mikesherov)", "Burak Yigit Kaya (@BYK)"],
|
|||
|
|
"caniuse": "websockets",
|
|||
|
|
"tags": ["html5"],
|
|||
|
|
"knownBugs": ["This test will reject any old version of WebSockets even if it is not prefixed such as in Safari 5.1"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "CLOSING State and Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/websockets/#the-websocket-interface"
|
|||
|
|
}],
|
|||
|
|
"polyfills": [
|
|||
|
|
"sockjs",
|
|||
|
|
"socketio",
|
|||
|
|
"websocketjs",
|
|||
|
|
"atmosphere",
|
|||
|
|
"graceful-websocket",
|
|||
|
|
"portal",
|
|||
|
|
"datachannel"
|
|||
|
|
]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Binary WebSockets",
|
|||
|
|
"property": "websocketsbinary",
|
|||
|
|
"tags": ["websockets"],
|
|||
|
|
"builderAliases": ["websockets_binary"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Base 64 encoding/decoding",
|
|||
|
|
"property": "atobbtoa",
|
|||
|
|
"builderAliases": ["atob-btoa"],
|
|||
|
|
"caniuse": "atob-btoa",
|
|||
|
|
"tags": ["atob", "base64", "WindowBase64", "btoa"],
|
|||
|
|
"authors": ["Christian Ulbrich"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "WindowBase64",
|
|||
|
|
"href": "https://www.w3.org/TR/html5/webappapis.html#windowbase64"
|
|||
|
|
}, {
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/atob"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["base64js"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Framed window",
|
|||
|
|
"property": "framed",
|
|||
|
|
"tags": ["window"],
|
|||
|
|
"builderAliases": ["window_framed"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "matchMedia",
|
|||
|
|
"property": "matchmedia",
|
|||
|
|
"caniuse": "matchmedia",
|
|||
|
|
"tags": ["matchmedia"],
|
|||
|
|
"authors": ["Alberto Elias"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://drafts.csswg.org/cssom-view/#the-mediaquerylist-interface"
|
|||
|
|
}, {
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/Window.matchMedia"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["matchmediajs"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "PushManager",
|
|||
|
|
"property": "pushmanager",
|
|||
|
|
"caniuse": "mdn-api_pushmanager",
|
|||
|
|
"authors": ["Dawid Kulpa (@dawidkulpa)"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/PushManager"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "ResizeObserver",
|
|||
|
|
"property": "resizeobserver",
|
|||
|
|
"caniuse": "resizeobserver",
|
|||
|
|
"tags": ["ResizeObserver"],
|
|||
|
|
"authors": ["Christian Andersson"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/resize-observer/"
|
|||
|
|
}, {
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/ResizeObserver"
|
|||
|
|
}, {
|
|||
|
|
"name": "Web.dev Article",
|
|||
|
|
"href": "https://web.dev/resize-observer/"
|
|||
|
|
}, {
|
|||
|
|
"name": "Digital Ocean tutorial",
|
|||
|
|
"href": "https://www.digitalocean.com/community/tutorials/js-resize-observer"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "worker type option test",
|
|||
|
|
"property": "workertypeoption",
|
|||
|
|
"caniuse":"mdn-api_worker_worker_ecmascript_modules",
|
|||
|
|
"tags": ["web worker type options", "web worker"],
|
|||
|
|
"builderAliases": ["worker_type_options"],
|
|||
|
|
"authors": ["Debadutta Panda"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/Worker/Worker"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Workers from Blob URIs",
|
|||
|
|
"property": "blobworkers",
|
|||
|
|
"tags": ["performance", "workers"],
|
|||
|
|
"builderAliases": ["workers_blobworkers"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/workers/"
|
|||
|
|
}],
|
|||
|
|
"warnings": ["This test may output garbage to console."],
|
|||
|
|
"authors": ["Jussi Kalliokoski"],
|
|||
|
|
"async": true
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Workers from Data URIs",
|
|||
|
|
"property": "dataworkers",
|
|||
|
|
"tags": ["performance", "workers"],
|
|||
|
|
"builderAliases": ["workers_dataworkers"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/workers/"
|
|||
|
|
}],
|
|||
|
|
"warnings": ["This test may output garbage to console."],
|
|||
|
|
"authors": ["Jussi Kalliokoski"],
|
|||
|
|
"async": true
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Shared Workers",
|
|||
|
|
"property": "sharedworkers",
|
|||
|
|
"caniuse": "sharedworkers",
|
|||
|
|
"tags": ["performance", "workers"],
|
|||
|
|
"builderAliases": ["workers_sharedworkers"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/workers/"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Web Workers",
|
|||
|
|
"property": "webworkers",
|
|||
|
|
"caniuse": "webworkers",
|
|||
|
|
"tags": ["performance", "workers"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "W3C Spec",
|
|||
|
|
"href": "https://www.w3.org/TR/workers/"
|
|||
|
|
}, {
|
|||
|
|
"name": "HTML5 Rocks Tutorial",
|
|||
|
|
"href": "https://www.html5rocks.com/en/tutorials/workers/basics/"
|
|||
|
|
}, {
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API/Using_web_workers"
|
|||
|
|
}],
|
|||
|
|
"polyfills": ["fakeworker", "html5shims"]
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "Transferables Objects",
|
|||
|
|
"property": "transferables",
|
|||
|
|
"tags": ["performance", "workers"],
|
|||
|
|
"builderAliases": ["transferables"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "Transferable Objects: Lightning Fast!",
|
|||
|
|
"href": "https://developers.google.com/web/updates/2011/12/Transferable-Objects-Lightning-Fast"
|
|||
|
|
}],
|
|||
|
|
"async": true
|
|||
|
|
}
|
|||
|
|
!*/
|
|||
|
|
/*!
|
|||
|
|
{
|
|||
|
|
"name": "XDomainRequest",
|
|||
|
|
"property": "xdomainrequest",
|
|||
|
|
"tags": ["cors", "xdomainrequest", "ie9", "ie8"],
|
|||
|
|
"authors": ["Ivan Pan (@hypotenuse)"],
|
|||
|
|
"notes": [{
|
|||
|
|
"name": "MDN Docs",
|
|||
|
|
"href": "https://developer.mozilla.org/en-US/docs/Web/API/XDomainRequest"
|
|||
|
|
}]
|
|||
|
|
}
|
|||
|
|
!*/
|