Команда разработчиков Medium обсудила некоторые плохие практики, которые нарушают доступность. В одном примере они утверждают, что opacity
это плохо поддерживается программами чтения с экрана, поэтому, если мы хотим скрыть элемент в переходе, мы всегда должны использовать visibility
атрибут:
.m-fadeOut ( visibility: hidden; opacity: 0; transition: visibility 0s linear 300ms, opacity 300ms; ) .m-fadeIn ( visibility: visible; opacity: 1; transition: visibility 0s linear 0s, opacity 300ms; )
Помните, что непрозрачность и видимость по-прежнему оставляют элемент в потоке документов. Если вам нужно удалить его из потока, есть над чем поработать. Фактически, вот способ думать о них ...
может сделать вещь невидимой | может сделать вещь неуправляемой | удаляется из потока документов | может быть переведен | может быть изменен на ребенка | |
---|---|---|---|---|---|
непрозрачность | я | нет | нет | да | нет |
видимость | я | я | нет | да | да |
отображать | я | я | я | нет | нет |
указатель-события | нет | я | нет | нет | нет |
Если вам нужно изменить отображаемое значение элемента после затухания, это сложнее. На самом деле это невозможно в CSS, так display
как нельзя переходить. Snook написал об этом, в том числе в помощь JavaScript.