В последнее время я работаю с некоторыми базовыми анимациями и в то же время стараюсь следовать хорошей веб-практике. Проблема, с которой я сталкиваюсь, заключается в мерцании изображения, когда не используется предустановленный метод css для скрытия элемента до загрузки страницы.
Очень легко предотвратить мерцание, просто скрыв элемент с помощью моего обычного css, а затем открыв его с помощью javascript, но мне это кажется ужасной практикой, если у кого-то отключен javascript.
Должен ли я использовать функцию HTML5 для размещения тегов <noscript>
в заголовке, а затем использовать отдельную таблицу стилей, чтобы установить непрозрачность и положение для окончательных настроек для пользователей без javascript? Это самое элегантное решение?
Я начал использовать библиотеку greensock (gsap) для TweenLite.from
, так как я могу просто установить все в конечное состояние в css, но я получаю небольшое мерцание изображения/текста при первой загрузке страницы. Мне нравится это решение, потому что я могу установить все css так, как это будет для кого-то без javascript, и оно позволяет мне легко анимировать из точки в существующую точку, вместо того, чтобы работать в обратном направлении, как я должен делать с Javascript или jQuery. Но есть еще мерцание изображения, что не совсем приемлемо. Решит ли это предварительный загрузчик страниц?
Какова общепринятая практика для этого в наши дни? Я также беспокоюсь о SEO и последствиях установки вещей на visibility: hidden
или display:none
, а затем их анимации. Читает ли паук Google javascript?
html
с помощью скрипта, который встраивается непосредственно как первый элемент вhead
— встроенный скрипт , а не внешний,document.documentElement.className = 'hasJS'
или что-то в этом роде, а затем используйте этот класс для указания форматирования, которое должно применяться только в том случае, если доступен JS,html.hasJS .foo { display:none; }
- person CBroe   schedule 24.07.2014