По высоте, наверное, никак, эта технология не предусматривает такого поведения. В помощь css columns на чистом цсс, что тоже вряд ли даст нужный результат, либо в идеале masonry на js.
Короче. Проблема в том, что труба воспринимает display: none как нулевые высоту и ширину, поэтому дает постеру самое плохое качество (пиксели эти самые). В сети нашлись варианты как сделать кастомный постер хорошего качества через youtube api. Но я нашел способ проще. Вместо того, чтобы долго рассказывать, просто покажу:
Единственный минус: в контент табов больше ничего кроме видео не впихнешь, так как страницы размечены под 16 на 9.
UPD: Тут подумал, а что если при загрузке страницы вкладки будут обе активные (т.е. видны и видео загрузится), и только по docready ты будешь ненужные прятать скриптом? Это должно сработать.
if (window.matchMedia('(max-width: 600px)').matches) {
$('.block__1').appendTo('.wr__2');
} else {
$('.block__1').appendTo('.wr__1');
}
А по-хорошему, нужно на старте парсить блоки и давать им, например, какой-то дата-атрибут, куда прописывать стартовые (текущие) значения, с которыми уже сравнивать состояние при изменении ширины экрана.
1. Проверяем, что шрифт поддерживает кириллицу.
2. Качаем шрифт, если этот нужный.
3. Конвертируем ttf или otf в веб-шрифт.
4. Кладем то, что сконвертилось (шрифты и сгенерированный цсс) в желаемую папку в проект (например fonts/dited).
5. Подключаем сгенерированный цсс в проект, не забывая правильно прописать семейство шрифта, как он назван в полученном цсс.
6. Profit.
Странно, что не получилось на masonry, он такое умеет точно. На цсс подобное делается на columns. Для наглядного понимания можно зайти сюда и потыкать ссылочки.
Думаю, без скрипта и дальнейшей логической математики тут не обойтись. Но для начала можно просто посчитать позицию ячейки относительно родителя (грида):
Затем смотреть, что имеем по количеству колонок и прочего, и как-то делить/высчитывать, если грид динамический например.