ã¢ã¯ã»ã·ããªãã£ã®ããã®ã¡ãã£ã¢ã¯ã¨ãªã¼ã®ä½¿ç¨
CSS ã¡ãã£ã¢ã¯ã¨ãªã¼ã¯ãéç¢ãæã£ãã¦ã¼ã¶ã¼ãã¦ã§ããµã¤ããããçè§£ãããã¨ãæ¯æ´ããããã«ãå©ç¨ãããã¨ãã§ãã¾ãã
åãã®åæ¸
ç¹æ» ããã©ãã·ã¥ã®ã¢ãã¡ã¼ã·ã§ã³ã¯ãæ³¨ææ¬ é¥é害 (ADHD) ã®ãããªèªç¥é害ãæã£ã人ã ã«ã¨ã£ã¦åé¡ã«ãªãå¯è½æ§ãããã¾ããå ãã¦ãç¹å®ã®ç¨®é¡ã®åããååºé害ãã¦ããããçé çãã¹ã³ããã¯æåæ§ãªã©ãå¼ãèµ·ããå¯è½æ§ãããã¾ããã¦ã¼ã¶ã¼ã®ç°å¢è¨å®ã«å¿ãã¦ã¢ãã¡ã¼ã·ã§ã³ã忏ããããã¢ãã¡ã¼ã·ã§ã³ãå®å ¨ã«ãªãã«ããããããã¨ããããããªã¼æ®éãå°ãªãã¦ã¼ã¶ã¼ãä½ã¹ããã¯ã®ç«¯æ«ã使ç¨ãã¦ããã¦ã¼ã¶ã¼ã«ã¨ã£ã¦å¥½ã¾ãããã¨ã§ãã
prefers-reduced-motion ã¡ãã£ã¢ã¯ã¨ãªã¼ã使ç¨ããã¨ããªãã¬ã¼ãã£ã³ã°ã·ã¹ãã ã®ã¢ã¯ã»ã·ããªãã£è¨å®ã§åããå°ãªãããããã«è¨å®ãã¦ããã¦ã¼ã¶ã¼ã«å¯¾ãã¦ãã¢ãã¡ã¼ã·ã§ã³ããã©ã³ã¸ã·ã§ã³ã®å°ãªãã使ãåæã®è¯ãä½é¨ãæä¾ãããã¨ãã§ãã¾ããããã«ã¯ 2 ã¤ã®å¤ãããã¾ãã
no-preference-
ã·ã¹ãã ãææ¡ãã¦ããè¨å®ãã¦ã¼ã¶ã¼ãè¡ã£ã¦ããªããã¨ã示ãã¾ãã
reduce-
ã¦ã¼ã¶ã¼ããåããã¢ãã¡ã¼ã·ã§ã³ãæå°éã«æããã¤ã³ã¿ã¼ãã§ã¤ã¹ãæ¨å¥¨ãããã¨ãã·ã¹ãã ã«éç¥ãããã¨ã示ãã¾ããã§ããã°ãå¿ è¦ã®ãªãåãããã¹ã¦é¤å»ãããç¨åº¦ã¾ã§ã§ãã
ä¾
ãã®ä¾ã¯ãã¢ã¯ã»ã·ããªãã£è¨å®ã§åããæå¶ããããè¨å®ããªãã¨ç ©ãã¢ãã¡ã¼ã·ã§ã³ã表示ããã¾ãã
HTML
<div class="animation">animated box</div>
CSS
.animation {
animation: vibrate 0.3s linear infinite both;
}
@media (prefers-reduced-motion: reduce) {
.animation {
animation: none;
}
}
prefers-reduced-motion ã®å¤ã¯ reduce ã§ããã "none" ã§ã¯ããã¾ããããã®è¨å®ã¯ããã¹ã¦ã®ã¢ãã¡ã¼ã·ã§ã³ãåé¤ããªããã°ãªããªããã¨ãæå³ãããã®ã§ã¯ããã¾ãããã¢ãã¡ã¼ã·ã§ã³ãåé¤ããã«ã¯ã * {animation: none !important;} ã使ç¨ãã¦ãã ãããããããã¦ã¼ã¶ã¼ã¯ãæä½ã«ãã£ã¦èµ·åãããã¢ãã¡ã¼ã·ã§ã³ãå«ããæ©è½ãä¼éãããæ
å ±ã«ã¨ã£ã¦ä¸å¯æ¬ ãªã¢ãã¡ã¼ã·ã§ã³ãé¤ããã¢ã¼ã·ã§ã³ã¢ãã¡ã¼ã·ã§ã³ãç¡å¹ã«ãªã£ã¦ãããã¨ãæå¾
ãã¦ãã¾ãï¼WCAG: Animation from Interactions ãåç
§ï¼ã
é¢é£æ å ±
prefers-contrast: ã¦ã¼ã¶ã¼ã®ã³ã³ãã©ã¹ãã®ç°å¢è¨å®ã«åºã¥ãã¦ãã¼ã¸ã¹ã¿ã¤ã«ã調æ´prefers-reduced-transparencyprefers-color-schemeinverted-colors- Designing With Reduced Motion For Motion Sensitivities