• About Us
  • Blog
  • Basket
  • Account
  • Sign In

RingMark Description

Ringmark is a 3rd party tool (developed by Facebook), that tests the features supported by web browsers. 51Degrees uses the results of these test to augment the browser profile data it collects. Properties which can be populated from Ringmark are shown in the following table.

51Degrees PropertyRingmark Feature TestSpecification
CssTransitionstransitions supportedW3C
AnimationTimingrequestAnimationFrame supportedW3C
cancelAnimationFrame supported
BlobBuilderBlob supportedW3C
CssBackgroundbackground shorthand, multiple images supportedW3C
CSS box-shadow supported
CSS border-radius supported
CssBorderImageborder-image-source supportedW3C
border-image-slice supported
border-image-width supported
border-image-outset supported
border-image-repeat supported
Shorthand border-image supported
CSS border-image shorthand property supported
CssColorCSS opacity supportedW3C
RGBA color supported
HSLA color supported
CssFlexboxalignContent supportedW3C
alignItems supported
alignSelf supported
flex supported
flexBasis supported
flexDirection supported
flexFlow supported
flexGrow supported
flexShrink supported
flexWrap supported
justifyContent supported
order supported
alignFlow supported
alignPack supported
alignOrder supported
CssFontfont-face supportedW3C
linear-gradient supported
repeating-linear-gradient supported
radial-gradient supported
repeating-radial-gradient supported
object-fit supported
object-position supported
imageOrientation supported
imageResolution supported
CssMediaQueriesmatchMedia supportedW3C
matchMedia expects passing results
matchMedia expects failing results
CssMinMaxmin-width supportedW3C
max-width supported
min-height supported
max-height supported
CssPositionFixed Position supportedW3C
CssTexttextShadow supportedW3C
wordWrap supported
wordBreak supported
CssTransformstransform supportedW3C
transformOrigin supported
transformStyle supported
perspective supported
perspectiveOrigin supported
backfaceVisibility supported
pointerEvents supported
DataSetDataset supportedwhatwg.org
fixture.dataset property is DOMStringMap
fixture.dataset.length expects 1
fixture.getAttribute('data-beta') === 'b' (set with dataset)
fixture.dataset.alpha === 'a' (set with setAttribute)
compatible get with getAttribute
compatible set with setAttribute
Expected: data-foo = foo
Expected: data-foo-bar = fooBar
Expected: data-- = -
Expected: data--foo = Foo
Expected: data---foo = -Foo
Expected: data-Foo = foo
Expected: data- =
Expected: data-à = à
Expecting length === 0
DataUrlData URL Loading: successietf.org
DeviceOrientationDeviceOrientationEvent supportedW3C
DeviceMotionEvent supported
FileReaderFileReader supportedW3C
onabort supported
onerror supported
onload supported
onloadend supported
onloadstart supported
onprogress supported
readAsText supported
readAsDataURL supported
readAsArrayBuffer supported
FormDataFormData supportedW3C
Expected value, 'alpha'
Expected value, 'beta'
Expected value, 'alpha'
Expected value, 'beta'
Expected value, 'delta'
FullscreenrequestFullScreen supportedW3C
requestFullScreen or requestFullscreen is a function
fullscreenElement supported
fullscreenEnabled supported
exitFullscreen is a function
GeoLocationnavigator.geolocation supportedW3C
getCurrentPosition supported
watchPosition supported
clearWatch supported
Historyhistory supportedwhatwg.org
history.pushState supported
history.pushState is a function
history.replaceState is a function
event.state supported
Html5article instanceof HTMLElementwhatwg.org
article node created
aside instanceof HTMLElement
aside node created
details instanceof HTMLElement
details node created
figure instanceof HTMLElement
figure node created
figcaption instanceof HTMLElement
figcaption node created
footer instanceof HTMLElement
footer node created
header instanceof HTMLElement
header node created
hgroup instanceof HTMLElement
hgroup node created
nav instanceof HTMLElement
nav node created
section instanceof HTMLElement
section node created
summary instanceof HTMLElement
summary node created
abbr instanceof HTMLElement
abbr node created
audio instanceof HTMLElement
audio node created
bdi instanceof HTMLElement
bdi node created
data instanceof HTMLElement
data node created
mark instanceof HTMLElement
mark node created
time instanceof HTMLElement
time node created
video instanceof HTMLElement
video node created
meter instanceof HTMLElement
meter node created
progress instanceof HTMLElement
progress node created
details.open supported
details.open === false
details height === 0
details height as expected
mark background is yellow
IframeSandbox iframe supportedwhatwg.org
sandbox iframe is blocked
IndexedDBindexedDB supportedW3C
IDBTransaction supported
IDBRequest supported
JsonJSON supportedecmascript.org
JSON.stringify supported
JSON.parse supported
JSON.parse reviver supported(1)
JSON.parse reviver supported(2)
JSON.stringify (functional) supported
JSON.stringify replacer supported(1
JSON.stringify replacer supported(2)
PostMessagepostMessage supportedW3C
onmessage supported
onmessage event fired
message content matched expected
XHR onload callback event argument is instanceof ProgressEvent
event.lengthComputable supported
event.loaded supported
event.total supported
event.lengthComputable is boolean
event.loaded is number
event.total is number
confirm supported
prompt supported
SelectormatchesSelector exists in some form as a property of document.bodyW3C
matchesSelector is a function
Expected ( body, 'body' )
Expected ( body, 'html body' )
Expected ( body, 'html > body' )
document.querySelector exists in some form
document.querySelector is a function
querySelector('body') returns something (element)
querySelector('body') returns an element with nodeType === 1
querySelectorAll exists in some form
querySelectorAll is a function
querySelectorAll('body') returns something with length (list)
list instanceof NodeList
list[ 0 ].matchesSelector('body')
SvgSVG createElementNS supportedW3C
svg supported
svg Namespace getCurrentTime
svg Namespace ownerSVGElement supported
TouchEventsTouchEvent supportedW3C
createTouch supported
ontouchstart supported
ontouchend supported
ontouchcancel supported
ontouchmove supported
track.kind supported
track.src supported
track.srclang supported
track.label supported
track.default supported
Videovideo supportedwhatwg.org
MPEG-4 supported (codecs="avc1.42E01E, mp4a.40.8")
H.264 supported (codecs="avc1.42E01E, mp4a.40.2")
H.264 supported (codecs="avc1.42E01E")
OGG supported (codecs="theora")
WebM supported (codecs="vp8, vorbis")
WebM supported (codecs="vp8")
WebWorkersWorker supportedW3C
Netscape === Netscape
Win32 === Win32
Worker correctly implements navigator
hash in location
href in location
host in location
hostname in location
pathname in location
port in location
protocol in location
search in location
Worker implements location
WorkerGlobalScope implements addEventListener
WorkerGlobalScope implements removeEventListener
WorkerGlobalScope implements dispatchEvent
WorkerGlobalScope implements importScripts
WorkerGlobalScope implements close
WorkerGlobalScope implements location
WorkerGlobalScope implements navigator
WorkerGlobalScope implements postMessage
WorkerGlobalScope implements self
Worker implements global properties
Worker supports complex data objects
Blob Web Worker
Xhr2xhr.upload is supportedW3C
ArrayBuffer supported
Blob supported
URL supported
xhr.upload.onabort supported
xhr.upload.onabort is TreatNonCallableAsNull
xhr.upload.onerror supported
xhr.upload.onerror is TreatNonCallableAsNull
xhr.upload.onerror supported
xhr.upload.onerror is TreatNonCallableAsNull
xhr.upload.onload supported
xhr.upload.onload is TreatNonCallableAsNull
xhr.upload.onloadstart supported
xhr.upload.onloadstart is TreatNonCallableAsNull
xhr.upload.onprogress supported
xhr.upload.onprogress is TreatNonCallableAsNull
ArrayBuffer data.response supported
data.response.byteLength supported
data.response.byteLength is number
blob is an instance of Blob
blob.size supported
blob.type supported
typeof blob.size is number
blob.size of fixture png.png is 23115
typeof blob.type is string
blob.type of fixture png.png is image/png
Correct Blob type
Text Response supported (strings)
Blob Response supported (images)
Document Response supported (XML, HTML documents)
Maskingimage masking supportedW3C
Canvascanvas getContext supportedwhatwg.org
canvas toDataURL supported
CanvasRenderingContext2D supported
context instanceof CanvasRenderingContext2D
2D Text supported


The 51Degrees property BrowserPropertySource should be checked for the value "Ringmark" to determine if the browser property information matched Ringmark.

Data from Ringmark is considered of secondary importance to caniuse.com.

RingMark does not populate the following properties which are set from other sources or default to Unknown.

  • CssColumn
  • CssCanvas
  • CssOverflow
  • Filewriter
  • Filesaver