В моем проекте я использую swiper.js в качестве слайд-шоу, каждый слайд содержит либо изображение, либо видео html5 с подписями/субтитрами webvtt. При отладке мы заметили, что положение субтитров неправильное (слишком низкое, обрезает экран) в браузерах WebKit. После долгих отладок выяснилось, что это правило css3 для родительского div (swiper-wrapper) делает позицию vtt неправильно:
transform: translate3d(-1024px, 0px, 0px)
Когда вы вставляете видео в первый слайд, все идет хорошо, так как еще нет перевода css.
Похоже, это основная проблема webkit: позиционирование webvtt по умолчанию прерывается при использовании перевода css для родителя.
Обходной путь, который я нашел, состоит в том, чтобы добавить позиционирование строки в самом vtt к каждому элементу субтитров, например:
WEBVTT
00:00:02.160 --> 00:00:06.440 line:90%
hello world
00:00:06.560 --> 00:00:11.920 line:90%
testing subtitles
Любое предложение без части «строка: 90%» частично отображается за кадром. Кажется, этот параметр заставляет парсер/рендерер webvtt устанавливать себя в правильную позицию.
ВОПРОС: кто-нибудь уже сталкивался с этой проблемой и есть ли другой (более простой) обходной путь для этой ошибки? Добавление части «строка:» ко всем субтитрам было бы адской работой ... если только не будет хорошего редактора, который может делать это в пакетном режиме.
ВОПРОС 2: Поскольку это похоже на ошибку синтаксического анализатора webkit vtt, кто-нибудь знает, куда лучше всего сообщить об этом?
Тестовая установка здесь: http://orgonemedia.nl/webvtt-bug/