{ "title":"CSS Scroll Snap", "description":"CSS technique that allows customizable scrolling experiences like pagination of carousels by setting defined snap positions.", "spec":"https://www.w3.org/TR/css-scroll-snap-1/", "status":"cr", "links":[ { "url":"http://generatedcontent.org/post/66817675443/setting-native-like-scrolling-offsets-in-css-with", "title":"Blog post" }, { "url":"https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Scroll_Snap_Points", "title":"MDN Web Docs - CSS Scroll snap points" }, { "url":"https://github.com/ckrack/scrollsnap-polyfill", "title":"Polyfill - based on an [older version](https://www.w3.org/TR/2015/WD-css-snappoints-1-20150326/) of the spec" }, { "url":"https://www.npmjs.com/package/css-scroll-snap-polyfill", "title":"Polyfill - based on the [current version](https://www.w3.org/TR/css-scroll-snap-1/) of the spec" }, { "url":"https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Scroll_Snap", "title":"MDN Web Docs - CSS Scroll Snap" }, { "url":"https://github.com/filamentgroup/snapper", "title":"A CSS Snap Points based carousel (and lightweight polyfill) " } ], "bugs":[ ], "categories":[ "CSS" ], "stats":{ "ie":{ "5.5":"n", "6":"n", "7":"n", "8":"n", "9":"n", "10":"a x #1 #5 #6", "11":"a x #2 #5 #6" }, "edge":{ "12":"a x #2 #5 #6", "13":"a x #2 #5 #6", "14":"a x #2 #5 #6", "15":"a x #2 #5 #6", "16":"a x #2 #5 #6", "17":"a x #2 #5 #6", "18":"a x #2 #5 #6", "79":"y", "80":"y", "81":"y", "83":"y", "84":"y" }, "firefox":{ "2":"n", "3":"n", "3.5":"n", "3.6":"n", "4":"n", "5":"n", "6":"n", "7":"n", "8":"n", "9":"n", "10":"n", "11":"n", "12":"n", "13":"n", "14":"n", "15":"n", "16":"n", "17":"n", "18":"n", "19":"n", "20":"n", "21":"n", "22":"n", "23":"n", "24":"n", "25":"n", "26":"n", "27":"n", "28":"n", "29":"n", "30":"n", "31":"n", "32":"n", "33":"n", "34":"n", "35":"n", "36":"n", "37":"n", "38":"n", "39":"a #5", "40":"a #5", "41":"a #5", "42":"a #5", "43":"a #5", "44":"a #5", "45":"a #5", "46":"a #5", "47":"a #5", "48":"a #5", "49":"a #5", "50":"a #5", "51":"a #5", "52":"a #5", "53":"a #5", "54":"a #5", "55":"a #5", "56":"a #5", "57":"a #5", "58":"a #5", "59":"a #5", "60":"a #5", "61":"a #5", "62":"a #5", "63":"a #5", "64":"a #5", "65":"a #5", "66":"a #5", "67":"a #5", "68":"y", "69":"y", "70":"y", "71":"y", "72":"y", "73":"y", "74":"y", "75":"y", "76":"y", "77":"y", "78":"y", "79":"y", "80":"y", "81":"y", "82":"y" }, "chrome":{ "4":"n", "5":"n", "6":"n", "7":"n", "8":"n", "9":"n", "10":"n", "11":"n", "12":"n", "13":"n", "14":"n", "15":"n", "16":"n", "17":"n", "18":"n", "19":"n", "20":"n", "21":"n", "22":"n", "23":"n", "24":"n", "25":"n", "26":"n", "27":"n", "28":"n", "29":"n", "30":"n", "31":"n", "32":"n", "33":"n", "34":"n", "35":"n", "36":"n", "37":"n", "38":"n", "39":"n", "40":"n", "41":"n", "42":"n", "43":"n", "44":"n", "45":"n", "46":"n", "47":"n", "48":"n", "49":"n", "50":"n", "51":"n", "52":"n", "53":"n", "54":"n", "55":"n", "56":"n", "57":"n", "58":"n", "59":"n", "60":"n", "61":"n", "62":"n", "63":"n", "64":"n", "65":"n", "66":"n d #7", "67":"n d #7", "68":"n d #7", "69":"y", "70":"y", "71":"y", "72":"y", "73":"y", "74":"y", "75":"y", "76":"y", "77":"y", "78":"y", "79":"y", "80":"y", "81":"y", "83":"y", "84":"y", "85":"y", "86":"y", "87":"y", "88":"y" }, "safari":{ "3.1":"n", "3.2":"n", "4":"n", "5":"n", "5.1":"n", "6":"n", "6.1":"n", "7":"n", "7.1":"n", "8":"n", "9":"a x #4 #5", "9.1":"a x #4 #5", "10":"a x #4 #5", "10.1":"a x #4 #5", "11":"y", "11.1":"y", "12":"y", "12.1":"y", "13":"y", "13.1":"y", "14":"y", "TP":"y" }, "opera":{ "9":"n", "9.5-9.6":"n", "10.0-10.1":"n", "10.5":"n", "10.6":"n", "11":"n", "11.1":"n", "11.5":"n", "11.6":"n", "12":"n", "12.1":"n", "15":"n", "16":"n", "17":"n", "18":"n", "19":"n", "20":"n", "21":"n", "22":"n", "23":"n", "24":"n", "25":"n", "26":"n", "27":"n", "28":"n", "29":"n", "30":"n", "31":"n", "32":"n", "33":"n", "34":"n", "35":"n", "36":"n", "37":"n", "38":"n", "39":"n", "40":"n", "41":"n", "42":"n", "43":"n", "44":"n", "45":"n", "46":"n", "47":"n", "48":"n", "49":"n", "50":"n", "51":"n", "52":"n", "53":"n", "54":"n d #7", "55":"n d #7", "56":"n d #7", "57":"n d #7", "58":"n d #7", "60":"n d #7", "62":"n d #7", "63":"n d #7", "64":"y", "65":"y", "66":"y", "67":"y", "68":"y", "69":"y", "70":"y" }, "ios_saf":{ "3.2":"n", "4.0-4.1":"n", "4.2-4.3":"n", "5.0-5.1":"n", "6.0-6.1":"n", "7.0-7.1":"n", "8":"n", "8.1-8.4":"n", "9.0-9.2":"a x #4 #5", "9.3":"a x #4 #5", "10.0-10.2":"a x #4 #5", "10.3":"a x #4 #5", "11.0-11.2":"y", "11.3-11.4":"y", "12.0-12.1":"y", "12.2-12.4":"y", "13.0-13.1":"y", "13.2":"y", "13.3":"y", "13.4-13.5":"y", "14.0":"y" }, "op_mini":{ "all":"n" }, "android":{ "2.1":"n", "2.2":"n", "2.3":"n", "3":"n", "4":"n", "4.1":"n", "4.2-4.3":"n", "4.4":"n", "4.4.3-4.4.4":"n", "81":"y" }, "bb":{ "7":"n", "10":"n" }, "op_mob":{ "10":"n", "11":"n", "11.1":"n", "11.5":"n", "12":"n", "12.1":"n", "46":"n" }, "and_chr":{ "84":"y" }, "and_ff":{ "79":"y" }, "ie_mob":{ "10":"n", "11":"n" }, "and_uc":{ "12.12":"n" }, "samsung":{ "4":"n", "5.0-5.4":"n", "6.2-6.4":"n", "7.2-7.4":"n", "8.2":"n", "9.2":"n", "10.1":"y", "11.1-11.2":"y", "12.0":"y" }, "and_qq":{ "10.4":"n" }, "baidu":{ "7.12":"n" }, "kaios":{ "2.5":"a #5" } }, "notes":"Works in the iOS WKWebView, but not UIWebView.", "notes_by_num":{ "1":"Partial support in IE10 refers to support limited to touch screens.", "2":"Partial support in IE11 [documented here](https://web.archive.org/web/20160616212557/https://dl.dropboxusercontent.com/u/444684/openwebref/CSS/scroll-snap-points/support.html)", "4":"Partial support in Safari refers to not supporting the `none` keyword in `scroll-snap-points-x`, `scroll-snap-points-y` and `scroll-snap-coordinate`, and length keywords (`top`, `right`, etc.) in `scroll-snap-destination` and `scroll-snap-coordinate`.", "5":"Supports properties from an [older version](https://www.w3.org/TR/2015/WD-css-snappoints-1-20150326/) of the spec.", "6":"Partial support in IE & Edge refers to not supporting `scroll-snap-coordinate` and `scroll-snap-destination`.", "7":"Available behind the \"Experimental Web Platform features\" feature flag" }, "usage_perc_y":90.06, "usage_perc_a":3.09, "ucprefix":false, "parent":"", "keywords":"scroll-margin,scroll-snap-points-x,scroll-snap-points-y,scroll-snap-type,scroll-snap-destination,scroll-snap-coordinate,scroll-snap-margin,scroll-snap-align", "ie_id":"cssscrollsnappoints", "chrome_id":"5721832506261504", "firefox_id":"", "webkit_id":"specification-css-scroll-snap-points-module-level-1", "shown":true }